周梦康 发表于 2014-07-09 3661 次浏览 标签 : 计算机基础

Best Practices for Speeding Up Your Web Site

原文原版:https://developer.yahoo.com/performance/rules.html

翻译版:http://www.cnblogs.com/smjack/archive/2009/02/24/1396895.html

上面是原文和一篇质量非常高的翻译,下面是我的笔记。

首先在第三条 给头部添加一个Expires 或者 Cache-Control (Add an Expires or a Cache-Control Header) 遇到小困惑。为什么在HTTP头里要设置同时设置 ExpiresCache-control:max-age http://segmentfault.com/q/1010000000599808

当我将浏览器缓存开启之后,在打开第一个页面的时候是200 ok点击页面上的测试超链接,跳转到第二个页面,对于刚请求的资源,都还是200 ok,只有当我刷新当前页面时,才会变成304。这是为什么呢?http://segmentfault.com/q/1010000000600092

第26条中说到:

 If you have 10 buttons inside a div, attach only one event handler to the div wrapper, instead of one handler for each button. Events bubble up so you'll be able to catch the event and figure out which button it originated from.

如果在一个Div中有10个按钮,与其在每个按钮上都放一个事件处理程序,不如只在Div上放一个事件处理程序。事件会冒泡上溯,这样你就会捕获这一事件,并找出是哪个按钮发起的它。

<ul id="ul"></ul>
<script>
for(i=1;i<10000;i++){
    $("#ul").append('<li>'+i+'</li>');
}
$("#ul li").click(function(){
    console.log(this);
})
$("#ul").delegate("li","click",function(){
    console.log('delegate',this);
})
</script>

理解参考:

1.事件冒泡:http://www.cnblogs.com/hh54188/archive/2012/02/08/2343357.html

2.事件代理的实现:http://bibodeng.sinaapp.com/web_develop/138.html

评论列表

回复 周梦康的哥 2014-11-17 17:23:04
http://www.jb51.net/article/27309.htm 我觉得 这哥写的就很好。。