Javascript jquerymobile中的最佳绑定时间
我有一个jquery应用程序,在一个html文件中有多个data roles=“page” 先把我所有的钮扣都系上好吗?或者在pagecreate事件中绑定某个“页面”上的按钮 做一件比另一件有什么好处 例:Javascript jquerymobile中的最佳绑定时间,javascript,jquery,jquery-mobile,Javascript,Jquery,Jquery Mobile,我有一个jquery应用程序,在一个html文件中有多个data roles=“page” 先把我所有的钮扣都系上好吗?或者在pagecreate事件中绑定某个“页面”上的按钮 做一件比另一件有什么好处 例: $(document).delegate(“#page1”,“pagecreate”,loadedFirstPage); $(document).delegate(“#page2”,“pagecreate”,loadedSecondPage); 函数loadedFirstPage(){
$(document).delegate(“#page1”,“pagecreate”,loadedFirstPage);
$(document).delegate(“#page2”,“pagecreate”,loadedSecondPage);
函数loadedFirstPage(){
$('#link1').bind('tap',function(){
log('helloworld');
});
//这里?
$('#link2').bind('tap',function()){
log('helloworld');
});
}
函数loadedSecondPage(){
//还是在这里?
$('#link2').bind('tap',function()){
log('helloworld');
});
}
需要考虑的是,使用.bind()
迭代选定元素的整个列表,并对每个元素运行绑定函数。因此,如果您有大量元素(数百个或更多),那么您可能只希望绑定到当前页面上的元素。但是,如果您处理的是一些元素,比如少于100个元素,那么您就不需要执行委派事件绑定的额外步骤
如果您一次绑定到所有元素,那么您可以在
文档中运行代码。ready
事件处理程序,或者简单地将JS代码放在HTML文档的末尾,这样当JS运行时页面上的所有元素都可用。好吧!我有大约50个,所有的事情都已经在文档中完成了。准备好了吗?我只是想看看是否有优化/改进我的代码:)谢谢你的解释
<script>
$(document).delegate("#page1",'pagecreate', loadedFirstPage);
$(document).delegate("#page2",'pagecreate', loadedSecondPage);
function loadedFirstPage(){
$('#link1').bind('tap',function(){
console.log('Hello World');
});
//HERE?
$('#link2').bind('tap',function(){
console.log('Hello World Again');
});
}
function loadedSecondPage(){
//OR HERE?
$('#link2').bind('tap',function(){
console.log('Hello World Again');
});
}
</script>
<div id="page1" data-role="page">
<a href="#page2" id="link1">Click here</a>
</div>
<div id="page2" data-role="page">
<a href="#page1" id="link2">Click here Again</a>
</div>