实例代码:
<!DOCTYPE html>
<!--STATUS OK-->
<html>
<head>
<title>js</title>
</head>
<body>
<div id="div"></div>
<script type="text/javascript" src="http://apps.bdimg.com/libs/jquery/2.1.1/jquery.min.js"></script>
</body>
<script>
$(function(){
console.time("jquery");
var $div = $("#div");
console.timeEnd("jquery");
var $div2 = $("#div");
console.time("getElementById");
var $div1 = $(document.getElementById("div"));
console.timeEnd("getElementById");
console.log($div[0] == $div1[0]);
console.log($div[0] == $div2[0]);
console.log($div);
console.log($div1);
})
</script>
</html>
jquery的ID选择器所消耗的时间比使用原生js的getElementById方法所用时间更长,所以可以使用getElementById方法得到该dom对象之后再用jquery封装成jquery对象.
例:
var $div1 = $(document.getElementById("div"))
使用此方法获取对象耗时是使用jquery选择器直接获取对象耗时的五分之一到三分之一(基于以上代码运行于FF/chrome/IE: 其中IE大概只有二分之一).