//live方法在jquery1.9以后的版本已经弃用,但在之前的版本中还可以使用。
//今天遇到一个问题,检测代码都没有什么问题,最后发现是执行顺序的问题。
//总结如下:
<div class="a">
aaa
<div class="b">
bbb
</div>
</div>
<input type="button" value="btn" id="btn" />
<script type="text/javascript" src="jquery-1.7.2.js"></script>
<script type="text/javascript">
/*
**live,on,bind,和直接用‘click’方法,
**后三种的执行优先级高于第一种(当在一个应用中同时出现这几种方式时,live这种调用方式最后执行)
**后三种的执行,按照代码中的先后顺序依次执行
*/
$('#btn').live('click', function(){
console.log('1')
console.log($('.b').is(':visible'));
})
$('#btn').click(function(){
console.log('4');
})
$('#btn').bind('click', function(){
console.log('3');
})
$('#btn').on('click', function(){
console.log('2')
$('.a').hide();
})
</script>
本文通过一个具体的示例,展示了在jQuery中不同点击事件(live、on、bind和click)的执行顺序及其优先级差异。文章揭示了这些事件处理程序在特定版本的jQuery中的执行逻辑,并强调了理解执行顺序对于解决实际开发问题的重要性。
3665

被折叠的 条评论
为什么被折叠?



