好的,所以我引用了存储在变量中的div
,我们称之为div_var
。
现在我想做点什么;我可以通过以下两种方式引用它;
div_var.animate()......
$(div_var).animate().....
第一种方式显然更容易,唯一的问题是我的代码编辑器(Komodo)不会为它提供任何代码提示/代码完成。第二种方式给了我完整的代码提示,但我不知道我是否因此而受到性能影响。
答案 0 :(得分:0)
<强> HTML 强>
<html>
<head>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.6.2.min.js"></script>
<script type="text/javascript" src="test.js"></script>
</head>
<body style="width: 600px;">
<p class="t1-start">1</p>
<p class="t2-start">1</p>
</body>
</html>
JS(test.js)
jQuery(document).ready(function($) {
var num = $('.t1-start')
var num2 = $('.t2-start')
firstCount()
function firstCount(){
var time = new Date()
var start = time.getTime()
for (var i=0; i < 10000; i++) {
$(num).append(' 1');
}
var time2 = new Date()
var end = time2.getTime()
var leng = end - start;
var leng_string = '<h1>'+leng+'</h1>'
$(num).replaceWith(leng_string)
secondCount()
}
function secondCount(){
var time = new Date()
var start = time.getTime()
for (var i=0; i < 10000; i++) {
num2.append(' 1');
}
var time2 = new Date()
var end = time2.getTime()
var leng = end - start;
var leng_string = '<h1>'+leng+'</h1>'
$(num2).replaceWith(leng_string)
}
})
第一个循环一直慢约15-20%。
答案 1 :(得分:-1)
如果div_var
已经是jQuery对象,那么再次将它传递给jQuery是多余的。
它是否对性能有影响取决于您的应用程序。事实上,这是一个额外的,不必要的函数调用。