1,jquery通过返回“this”关键字,返回一个jquery对象,便可以使jquery可以优雅地使用链式访问jquery方法。
2,jquery对象索引返回的是DOM对象,可以使用$()将其转换成jquery对象,如:$($("img")[0]).size();
3,jquery内部使用javascript原生态的getElementById()方法,所以ID选择是最快的,应尽量选择从ID开始的选择器
4,保存选择对象,尽量减少选择器使用次数如:
5,标准DOM的createElemenmt()方法与innerHTML()方法创建DOM对象效率对比
当需要插入多个元素,并且可以在插入前构造完整的HTML代码时,使用innerHTML一次插入所有元素可以极大提高效率。如果需要分别插入元素则使用createElement()方法。
DOM方法:
innerHTML()方法:
6,filter()与find()的区别
filter()对自身集合元素筛选
find()是对它的子集操作。
7,强大的串联操作函数andSelf()与end();
2,jquery对象索引返回的是DOM对象,可以使用$()将其转换成jquery对象,如:$($("img")[0]).size();
3,jquery内部使用javascript原生态的getElementById()方法,所以ID选择是最快的,应尽量选择从ID开始的选择器
4,保存选择对象,尽量减少选择器使用次数如:
$('div').each(function(){
var _self = $(this);
_self.click(function(){
alert('click');
});
_self.find('span').css('color','red');
});
5,标准DOM的createElemenmt()方法与innerHTML()方法创建DOM对象效率对比
当需要插入多个元素,并且可以在插入前构造完整的HTML代码时,使用innerHTML一次插入所有元素可以极大提高效率。如果需要分别插入元素则使用createElement()方法。
DOM方法:
var startDate = new Date();
for(var i = 0;i<100;i++){
var oDiv = document.createElement("div");
var oText = document.createTextNode("text");
oDiv.appendChild(oDiv);
oDiv.style.height = "100px";
oDiv.style.height = "20px";
oDiv.style.backgroundColor = "#eee";
};
this.holder.innerHTML += "<br/>使用createElement耗时:"+(new Date() - startDate);
innerHTML()方法:
createDom1:function(){
var startDate = new Date();
var builder = new Array();
for(var i = 0;i<100;i++){
builder.push("<div style='width:100px;height:20px;background-color:#eee'>test</div>");
};
this.holder.innerHTML = builder.join("");
this.holder.innerHTML += "使用innerHTML耗时"+(new Date() - startDate);
}
6,filter()与find()的区别
filter()对自身集合元素筛选
find()是对它的子集操作。
7,强大的串联操作函数andSelf()与end();