延迟加载图片的 jQuery 插件:Lazy Load

网站的速度非常重要,现在有很多网站优化的工具,如 Google 的 Page Speed,Yahoo 的 YSlow,对于网页图片,Yahoo 还提供 Smush.it 这个工具对图片进行批量压缩,但是对于图片非常多的网站,载入网页还是需要比较长的时间,这个时候我们可以使用 Lazy Load 这个 jQuery 插件来延迟加载图片。

Lazy loader 是一个延迟加载图片的 jQuery 插件,在一些图片非常多的网站中非常有用,在在浏览器可视区域外的图片不会被载入,直到用户将页面滚动到它们所在的位置才加载,这样对于含有很多图片的比 较长的网页来说,可以加载的更快,并且还能节省服务器带宽。

Lazy Loader 使用也非常简单,首先确保你的页面已经加载 jQuery Javascript 库,然后在加载 Lazy Load 的 Javascript 文件:

<script src="jquery.js" type="text/javascript"></script>
<script src="jquery.lazyload.js" type="text/javascript"></script>

然后在页面的 header 添加如下代码即可:

<script type="text/javascript"></script>
$(document).ready(function(){
    $("img").lazyload({
        placeholder : "/images/grey.gif",
        effect : "fadeIn"
    });
}
</script>

当然 Lazy Load 也有更多复杂的设置,你可以参考 Lazy Load 原文介绍或者 mg12 的翻译

我爱水煮鱼已经增加了这个功能,你可以在一些图片较多的日志页面预览下。

我这时用的是其它网站上提供的两个js,推荐使用:

<script language="javascript" type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"></script>
<script language="javascript" type="text/javascript" src="http://berry.sinaapp.com/i/js/jquery.lazyload.js"></script>

来源:http://fairyfish.net/2010/07/07/jquery-lazy-load/

用javascript 怎么判断图片是否加载完成呢

用javascript 怎么判断图片是否加载完成呢?

function loadImage(url){
var o= new Image();
o.src = url;
if(o.complete){

window.alert('图片加载完成:'+url);

}else{
o.onload = function(){

window.alert('图片加载完成:'+url);

};
o.onerror = function(){

window.alert('图片加载失败:'+url);

};
}
}

如果我要先把这一个图片加载完,之后才显示怎么处理呢. Continue reading

shell中的test表达式

摘自:UNIX Shell编程24学时编程

10.1.2 使用test

更常见的情况是,提供给if语句的清单是一个或更多个test命令,它们通过调用test命令而被激活,语法如下:

test expression

这里,expression为test命令构造的表达式,该表达式的构造使用了特殊选项之一.在计算完表达式的值后,test命令或者返回0(真)或者返回1(假).

可用"["命令对test命令进行缩写:

[ expression ]

这里expression是test命令可以理解的任何有效表达式,该简化格式将是读者可能会踫见的最常用格式.

test可理解的表达式类型分为三类:

文件测试.
字符串比较.
数字比较.

读者将逐步学业习这三类,另外,还会学习到复合表达式. Continue reading

centos 使用rz指令

在linux下安装rz很方便,使用

yum install lrzsz

就可以安装,正常使用rz和sz命令。

下面对sz和rz命令的一点介绍:

一般来说,linux服务器大多是通过ssh客户端来进行远程的登陆和管理的,使用ssh登陆linux主机以后,如何能够快速的和本地机器进行文件的交互呢,也就是上传和下载文件到服务器和本地;

与ssh有关的两个命令可以提供很方便的操作:

sz:将选定的文件发送(send)到本地机器,即下载

rz:运行该命令会弹出一个文件选择窗口,从本地选择文件上传到服务器(receive),即上传 Continue reading

DDOS攻击分析与预防专题

DDOS是英文Distributed Denial of Service的缩写,意即"分布式拒绝服务",DDOS的中文名叫分布式拒绝服务攻击,俗称洪水攻击。

DDoS攻击概念
DDoS攻击手段是在传统的DoS攻击基础之上产生的一类攻击方式。单一的DoS攻击一般是采用一对一方式的,当攻击目标CPU速度低、内存小或者网络带宽小等等各项性能指标不高它的效果是明显的。随着计算机与网络技术的发展,计算机的处理能力迅速增长,内存大大增加,同时也出现了千兆级别的网络,这使得DoS攻击的困难程度加大了 - 目标对恶意攻击包的"消化能力"加强了不少,例如你的攻击软件每秒钟可以发送3,000个攻击包,但我的主机与网络带宽每秒钟可以处理10,000个攻击包,这样一来攻击就不会产生什么效果。 Continue reading

浅析DDOS攻击原理以及预防措施

一、阻断服务(Denial of Service)

在探讨 DDoS 之前我们需要先对 DoS 有所了解,DoS泛指黑客试图妨碍正常使用者使用网络上的服务,例如剪断大楼的电话线路造成用户无法通话。而以网络来说,由于频宽、网络设备和服务器主机等处理的能力都有其限制,因此当黑客产生过量的网络封包使得设备处理不及,即可让正常的使用者无法正常使用该服务。例如黑客试图用大量封包攻击一般频宽相对小得多的拨接或 ADSL 使用者,则受害者就会发现他要连的网站连不上或是反应十分缓慢。   Continue reading

FreeBSD系统下普通用户切换root用户,提示su:sorry的解决办法

FreeBSD系统下su:sorry的解决办法
在FreeBSD上要使用su命令成为root用户,不但要知道root的口令,还需要经过特别设置,否则就不能成功使用这个命令。这是因为 FreeBSD对执行su命令的用户进行了更严格的限制,能使用su命令的用户必须属于wheel组(root的基本属组,组ID为0),否则就不能通过 这个命令成为root用户。因此需要编辑组设置文件/etc/group,将需要超级用户权力的管理成员加入到wheel组中。
可以使用如下命令给普通用户su - root的权力:

pw groupmod wheel -m <username>
pw user mod <username> -g wheel

或者直接修改/etc/group文件,把相应的用户加到wheell组就可以

wheel:*:0:root,<username>

FreeBSD系统下默认是不允许root用户直接通过ssh连接到服务器的,在安装FreeBSD系统时要创建一个额外的用户,切忌一定要把这个用户加入到wheel组中(如果不加入到这个组中的话就无法ssh),也可以安装完系统后创建用户,并把这个用户加入wheel组。

杨卫华:新浪微博的架构发展历程

新浪科技讯 11月16日下午消息,由新浪微博(http://t.sina.com.cn)(http://t.sina.com.cn)主办的中国首届微博开发者大会在北京举行,这是国内微博行业的首场技术盛宴。作为国内微博市场的绝对领军者,新浪微博将在此次大会上公布一系列针对开发者的扶持政策,以期与第三方开发者联手推动微博行业的整体发展。图为微博平台首席架构师杨卫华演讲。

以下为演讲实录:

大家下午好,在座的大部分都是技术开发者,技术开发者往往对微博这个产品非常关心。最晚的一次,是12点多收到一个邮件说想了解一下微博底层是 怎么构架的。很多技术人员对微博的构架非常感兴趣,就是一个明星他有300万粉丝,这个技术怎么来实现?今天在这里跟大家分享一下微博的底层机构,让大家 对微博的底层技术有更好的了解。另外不管是做客户端、1.0、2.0、论坛、博客都要考虑架构的问题,架构实际上是有一些共性的。今天我通过讲解微博里面 的一些架构,分析一下架构里面哪些共性大家可以参考。 Continue reading