1.设置一个独立的前端文件服务器
2.对css和js文件启用Gzip压缩
3.合同多个小css文件和js文件,但是也不宜过大,百k以内是较好的选择
4.合并小的图片, 利用 CSS background 相关元素进行背景图绝对定位,单个文件最佳控制在200K 以下
5.把CSS样式放在页面的上方,无论是HTML还是XHTML还是CSS都是解释型的语言,而非编译型的。所以CSS到上方的话,那么浏览器解析结构的时候,就已经可以对页面进行渲染。
6.将脚本放在底部
7.避免使用CSS中的Expressions
8.减少DNS查询,降低网络解析的时间损耗
9.尽量减少重定向,比如对 Web 站点子目录的后面添加个 "/ " ,就能有效避免一次重定向。http://www.xxx.com/a 与 http://www.xxx.com/a/ 二者之间是有差异的。
10.采用前端MVC框架,提高服务器每次响应的利用率
11.最小化 iframe 的数量
12.切分组件到多个域,提高页面组件并行下载能力,提高文件并行下载速度
13.单个数据对象小于 25K。
14.使用 <link> 而不是@importChoose <link> over @import。在 IE 中 @import 指令等同于把 link 标记写在 HTML 的底部。
15.缩小 Cookie,针对 Web 组件使用域名无关性的 Cookie
16.对 AJAX 请求使用 GET 方法,XMLHttpRequest POST 要两步,而 GET 只需要一步。但要注意的是在IE 上 GET 最大能处理的 URL 长度是 2K。
17.利用CDN加速服务,更好的适应中国的网络环境。
本文链接
今天用一种简洁的方法toggleClass()实现了隔行换色:代码如下:
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title>隔行换色</title>
<script src=/blog_article/"js/jquery-1.4.2.min.js"></script>_br/index.html>
<style type="text/css">
body,table,td, {
font-family:Arial, Helvetica, sans-serif;
font-size:12px;
}
.h {
background:#f3f3f3;
color:#000;
}
.c {
background:#ebebeb;
color:#000;
}
</style>
</head>
<body>
<div id="aaa">
<form>
<table id="table" width="50%" border="0" cellpadding="3" cellspacing="1">
<tr>
<td width="30" align="center"><input type="checkbox" name="checkbox" class="check1" value="checkbox" /></td>
<td>蓝枫前端</td>
<td>蓝枫前端</td>
</tr>
<tr>
<td align="center"><input type="checkbox" name="checkbox" class="check1" value="checkbox" /></td>
<td>蓝枫前端</td>
<td>蓝枫前端</td>
</tr>
<tr>
<td align="center"><input type="checkbox" name="checkbox" class="check1" value="checkbox" /></td>
<td>蓝枫前端</td>
<td>蓝枫前端</td>
</tr>
<tr>
<td align="center"><input type="checkbox" name="checkbox" class="check1" value="checkbox" /></td>
<td>蓝枫前端</td>
<td>蓝枫前端</td>
</tr>
<tr>
<td align="center"><input type="checkbox" name="checkbox" class="check1" value="checkbox" /></td>
<td>蓝枫前端</td>
<td>蓝枫前端</td>
</tr>
<tr>
<td align="center"><input type="checkbox" name="checkbox" class="check1" value="checkbox" /></td>
<td>蓝枫前端</td>
<td>蓝枫前端</td>
</tr>
<tr>
<td align="center"><input type="checkbox" name="checkbox" class="check1" value="checkbox" /></td>
<td>蓝枫前端</td>
<td>蓝枫前端</td>
</tr>
</table>
</form>
</div>
<script>
第一种比较复杂的方法:
$(function()
{
$("#table tr").hover(function()
{
$(this).addClass("h");
},function()
{
$(this).removeClass("h");
})
$("input").click(function()
{
if($(this).attr("checked"))
{
$(this).closest("tr").addClass("c");
}
else
{
$(this).closest("tr").removeClass("c");
}
})
})
第二种比较简单的方法:
toggleClass() 对设置或移除被选元素的一个或多个类进行切换。
该方法检查每个元素中指定的类。如果不存在则添加类,如果已设置则删除之。这就是所谓的切换效果。
不过,通过使用 "switch" 参数,您能够规定只删除或只添加类。
$(function(){
$("#table tr").hover(function(){
$(this).toggleClass("h");
})
$("input").click(function(){
var d = $(this);
d.closest('tr').toggleClass("c",d.attr("checked")) ;
})
})
</script>
</body>
</html>
function createXHR(){ if( typeof XMLHttpRequest != "undefined" ){ return new XMLHttpRequest(); }else if( typeof ActiveXObject != "undefined"){ // 判断ie var versions = [ "MSXML2.XMLHttp.6.0", "MSXML2.XMLHttp.3.0", "MXXML2.XMLHttp" ]; for( var i = 0;i < versions.length; i++ ){ try{ return new ActiveXOject( versions[ i ] ); }catch(e){ //跳过 } } }else{ throw new Error( "您的浏览器不支持XHR对象!" ) } } var xhr = new createXHR(); alert(xhr)