Jul
21

这几天HostGator的空间要到期了。记得去年这个时候购买了HostGator的主机空间,这几天弄的手忙脚乱,域名续费,网站备份等等琐事。
其实最费时间的还是挑选新的机房,至于为什么放弃HostGator,并不是因为负面原因,只是因为用途发生了改变。之前买了昂贵的HostGator的空间,为的是保证老外的访问速度。而现在则仅仅用于自己的博客,并且希望在国内的访问速度能够达到能够接受的程度。

经过一晚上的不懈努力,分析比较不同国家、不同机房、不同主机商、不同价格……最后放弃了香港(试用了Scicube的空间,很失望)、新加坡、日本等亚洲空间,最后仍然选择了美利坚。因为看来看去,还是美国的此类服务最实惠,性价比最高,并且最重要的是,现在的延迟情况已经越来越理想,已经可以达到150ms以内了。

看了点论坛,总结下来就是美国与大陆之间延迟最小(仅仅比较延迟,带宽、速率之类的其实我不是很关心)的几个机房依次是Fremont的“几个”机房,西雅图和达拉斯。似乎Fremont这个地方有好几个机房,不过延迟还是存在一定差异,但都在200以内。所以最后我选择了一个150ms左右的,效果相当不错,打开页面的体验比原先提升了不少,wordpress没有以前那么卡了嘎嘎~
[阅读全文:博客搬入美国He.net的Fremont机房]

Mar
07

今天在写一个鼠标悬停下拉菜单过程中,遇到一个很抓狂的问题。既然是鼠标悬停效果,那就用到了jQuery的2个事件,mouseover和mouseout(在jQuery 1.3的API手册中只有这两个鼠标移入移出事件)。

先看下使用mouseout的效果:

Tips:您可以在运行代码前对其进行修改!

我们发现使用mouseout时,鼠标只要在容器里一移动,就被出发了hide(),其实是因为mouseout事件也会影响到子元素,也就是事件可能被同时绑定到了该容器的子元素上,所以鼠标移出每个子元素也都会触发我们的hide()。
[阅读全文:jQuery中使用mouseleave代替mouseout]

Feb
25

几款浏览器对透明度的支持方式各不相同,为了保证在IE, Firefox, Chrome, Safari等主流浏览器下都能正常显示透明度的效果,我们可以定义一个透明度的class,因为一写就要写3条,省的每次都复制来复制去了。
具体代码如下:

.transparent{
filter:alpha(opacity=60);  /*支持 IE 浏览器*/
-moz-opacity:0.60; /*支持 FireFox 浏览器*/
opacity:0.60;  /*支持 Chrome, Opera, Safari 等浏览器*/
}
Feb
21

一般来说,在对一个文件域(input type=”file”)使用了验证后,我们总会希望把文件域中的值给清空了(否则错误的文件仍然会被提交),而在IE中,安全设置的原因,是不允许更改文件域的值的(也就是不能使用val(“”))

那么很显然,我们就只能换个思路,把这个input元素复制一个,然后将原来的删除。
在IE下复制元素的时候,其中的值是不会被复制的,所以就达到了清空文件域的目的了。
而在Firefox下,其中的值也会被一同复制,那么我们就顺便清空一下就做到兼容了。
代码如下:

var file = $(":file");
file.after(file.clone().val(""));
file.remove();
Feb
19

今天在用ASP.NET实现图片上传功能时遇到一个小问题。

使用表单文件域(input type=”file”)时,在PostBack中使用Request.Files获取不到文件。研究了半天,发现在input标签中使用runat=”server”后,是能够正常获取的。但是为了前端的元素ID不被修改,我尽可能不使用runat=”server”。

网上查阅了一下,最终让我找到了原因。用了高级货之后,忘本了呵呵。

要让form能够传递文件的话,必须要在form标签中加入enctype=”multipart/form-data”

<form enctype="multipart/form-data" ID="form1" runat="server">
      <input type="file" name="filename" />
</form>

在input 中使用了runat=”server”,那么ASP.NET会自动处理这些事情,而如果我们要自己DIY,就得记住这些啦!

Feb
18

今天好友给我看了一个网站:http://www.jijiblog.com/
原先以为只是有人和我用了同一套模板,但是经过我仔细打量,这并不是单纯是模板雷同而已了,我博客几乎所有的内容都被盗用到了他所谓的”JiJi’s Blog”上,并且我还能够发现部分文章里仍然有steveluo这样的文字痕迹。

我想了想,在博客这几次迁徙中,有好几个环节可能导致这些数据的泄露,这兄弟正好捡了个皮夹子,要托工信部的福,让他好不费功夫拿到了我这个“收视率”爆低的博客,内容还挺杂,难道是他和我臭味相投么?

这兄弟技术还是可以的,能改的都改了,可惜在文章的排名上,他可能就比较糟糕了,我的许多文章都能在google第一页搜到,而他的这些文章可能10页开外都不见踪影。

干IT这行,需要的是积累,享用别人的成果往往会让自己止步不前。

2010年我有空还是换套模板吧呵呵,这套模板也用了好多年了,新的开始确实要有一个新的态度了。

Feb
01

重见天日啦!

Filed under (生活随想) by Steve Luo at 2010-01-02

经历了互联网整治狂潮的冲击,我的博客迁徙了好多地方,关闭了好久了,现在终于又重新开放了。

其实本站是备过案的,只是迫于各机房的备案申报机制以及服务器的问题(服务器是朋友的,我没理由每天催着别人),所以一拖再拖,让我最后下决心把博客搬到了美利坚的国土上。。无奈啊,速度虽慢,倒还稳定,就这样凑合着吧,日后有机会还是要弄一台自己的服务器。

就着这次大迁徙,顺便也把博客升级到了最新版。不过Google Adsense貌似要停一个月了,竟然PIN码没收到。。晕,重新申请一个,又得等好久。

不过这个HostGator的空间是去年暑假时候买的,没多少时日了,下一步计划可能会搞一个日本的空间,因为最近发现日本网站速度挺快的,价格似乎也不是那么贵。希望中日关系不会影响到互联网。。。

Dec
05

今天使用Visual Studio 2008制作前端页面的时候,将原先已经制作好的html页内容完完整整一字不差地复制到新建的Default.aspx后,用除了IE6的大部分浏览器(我测试了IE7/8,Firefox),均能够正常显示布局(我已经在静态页上进行了css hack),而唯独IE6特立独行,来了个大花脸。。囧

测试了各种可能性,最后我保证了aspx与html也输出完全一致(内容本来就一样,就是格式不同),不过仍然失败。

排除了各种可能,判断很有可能是VS在输出aspx的时候出现了问题。网上查阅了一下,发现果然如此。
[阅读全文:IE6问题:html静态页正常而使用aspx后出现严重问题]

Aug
21

今天应怪怪要求在学院服务器上安装一个WordPress,作为军训专题站。由于域名不能自由控制,所以只能在站点下建子目录来挂更多的应用。但是由于不想在根目录下放过多的目录(PHPCMS已经安装在根目录,所以文件繁多),因此选择了在其他目录通过虚拟目录的挂载方式实现子目录。
这样就出现了问题,由于虚拟目录所指向的路径存在中文路径,即:“D:\网站目录\军训专题\”,下载好WordPress 2.8.4,解压,然后浏览器中访问,进入了著名的5分钟安装界面,填写完数据库信息,进入第二步。

出错的地方到了,就是在第二步插入数据时报错了,页面上会提示类似于以下内容的错误信息(省略了大部分信息,重点突出关键行):

WordPress database error: [Incorrect string value: '\xCD\xF8\xD5\xBE\xB9\xA6...' for column 'option_value' at row 58]
INSERT INTO wp_options (option_name, option_value, autoload) VALUES ('siteurl', 'http://*.edu.cn/jx2009', 'yes'), ('blogname', 'My Blog', 'yes'),
...........................................
 ('upload_path', 'D:\\��վ����\\��ѵ����/wp-content/uploads', 'yes'),
...........................................

我们可以看到upload_path这一项的值中间含有“�վ”这样的乱码(可能乱码形式不一样,总之是乱码),这个应该是PHP的问题,也总就是那utf-8和gb2312之间的事情了。当务之急不去研究那些编码问题,而是找到简便的解决方法。经过观察,其实WordPress的upload_path字段并不需要储存完整的路径,后台可以将这个路径直接设置为“wp-content/uploads”,那么在安装时候我们也可以直接把上传保存路径设置为这个,不需要读取完整的绝对路径了。
[阅读全文:中文路径安装WordPress出错解决方法]

Aug
16

今天在修改一个tab样式的时候遇到一个问题,用了span:hover,想达到一个鼠标悬停效果。可是调试了半天,hover的效果就是不出现。
之前错误的书写顺序:

span{display: block; width: 110px; height: 40px;}
span:hover{background: 0 -40px;}
span.button-1{background:url(../images/tabs/button_1.png);}

这样测试出来的结果跟我预期的不一样,我想在span.button-1定义背景图片,然后在鼠标经过时hover显示悬停效果。本应该是会移到背景的第40像素开始显示,可是仍然只显示原始图像。
经过多次测试,终于发现是由于伪类的书写顺序不正确造成的。网上查阅了一下资料,的确伪类有明确的书写顺序规定,如果错了的话就可能造成显示结果不正确。
后来分析一下我的CSS,发现可能是由于最后一行button-1的样式把hover的background又给覆盖了。于是把伪类放到最后,也就是必须将伪类写在本身选择器之后。问题解决。

虽然我的这个问题和伪类之间的顺序并不是很相关,但是这些伪类之间的顺序还是值得关注一下的,省的以后又出现同样的问题。
顺序如下:

a:link
a:visited
a:hover
a:active

总结一下就是LVHA,听说这个叫爱恨原则,LoVe/HAte,便于记忆吧呵呵。

top
39 queries. 0.347 seconds.