jQuery 1.7的.on()
和.off()
方法应该替换.live()
等。
我用动态项目尝试了它:
$(".myList").on('click', function(e){
alert('hello world');
});
对于我加载DOM后添加的元素,这不起作用。
代码是否是jQuery 1.7的.on()
和.off()
方法的有效示例?
答案 0 :(得分:33)
请参阅http://blog.jquery.com/2011/11/03/jquery-1-7-released/了解live() - >开/关()(和其他)例子。
这是将live转换为on的示例:
$('a').live('click', fn);
$(document).on('click', 'a', fn);
所以你的例子变成了:
$(document).on('click', '.myList', function(e){
alert('hello world');
});
答案 1 :(得分:4)
这是一个小例子:
<script type="text/javascript">
$(function(){
$(document).on('click','.clickme' , function(e){
addtext()
});
function addtext() {
$('.myList').append('<div class="clickme">click me</div>')
}
})
</script>
<div class="myList">
<div class="clickme">-click-</div>
</div>
答案 2 :(得分:2)
“绑定”:
$(document).on('click','.myDiv',function(){ ... });
与“unbind”:
$(document).off('click','.myDiv');