已经移动端用zepto做的页面,突然发现on绑定的click事件并没有触发,写法如下,是事件委托的写法。
<ul>
<li class="abc">1111111aaaaaaasssss</li>
<li class="abc">aaaaaaassssss</li>
<li class="abc">ssssssss</li>
</ul>
$(document).on('click','.abc',function(argument) {
alert($(this).html())
})
我把此写法改成非事件委托的方式,发现该click事件就能触发
$(‘.abc’).on('click',function(argument) {
alert($(this).html())
});
于是想起来是不是得需要引用zepto的event模块,结果引用后还是发现不行。最后一同事说把$(document)换成$('body')或者$('ul')试试,换过后我震惊了,实验结果是:
$(document) 不行
$(‘body') 不行$(‘ul') 行
没办法,让我们记住这个坑吧