1.选择:优先用#id,使用.class前面带上tag名称,多次操作是使用变量保存(或链式操作)。
2.sizzle:1.3后采用的选择器引擎采用‘自右向左’取代传统的‘自左向右’,右边选择器更加明确,比如 $('div.class span.class2'),因此在写选择器时需要考虑这点
3.绑定事件时用live()/delegate()取代bind()
4.操作dom时可以先取出dom->操作dom—>恢复到原来的位置
5.用find()胜于上下文
6.用html5
html5有增加很多独特的tag,更多的tag说明对于特定的tag共同使用的元素越少,
选择器引擎有更好的表现
7.大量添加样式时用渲染元素比$.css()好
8.多用对象检测
9.有时用js原始方法更有效率
10.学一些不常用的方法:map(), slice(),stop(), queue(), dequeue(), prevAll(), pushStack(),inArray().
2.sizzle:1.3后采用的选择器引擎采用‘自右向左’取代传统的‘自左向右’,右边选择器更加明确,比如 $('div.class span.class2'),因此在写选择器时需要考虑这点
3.绑定事件时用live()/delegate()取代bind()
4.操作dom时可以先取出dom->操作dom—>恢复到原来的位置
var theForm = $('#myForm');
var formParent = theForm.parent();
theForm.remove();
inputArr.each(function() {
theForm.append(this);
});
formParent.append(theForm);
//or detach().doSomething().appendTo();
5.用find()胜于上下文
var panels = $('div.panel', $('#content'));
var panels = $('#content').find('div.panel');//better
6.用html5
html5有增加很多独特的tag,更多的tag说明对于特定的tag共同使用的元素越少,
选择器引擎有更好的表现
7.大量添加样式时用渲染元素比$.css()好
$('<style type="text/css"> div.class { color: red; } </style>') .appendTo('head');
8.多用对象检测
9.有时用js原始方法更有效率
10.学一些不常用的方法:map(), slice(),stop(), queue(), dequeue(), prevAll(), pushStack(),inArray().