$('#ul1').on("click","li",function()
这个的意思,就是给#ul1里面的每个li绑定click事件,并把事件触发后的处理都委托给#ul1。表面上看事件是由#ul1绑定的,但实际触发事件的是里面的li,所以直接用trigger来触发#ul1的click事件是无效的!
改成这样就有效:
$(function(){$('#ul1').on("click","li",function(){
$(this).prepend("我是新的")
}).find("li").trigger("click")
})
或者
$(function(){$('#ul1').on("click","li",function(){
$(this).prepend("我是新的")
})
$('#ul1 li').trigger("click")
})
可以用事件委托,jquery提供on()方法(jquery 1.7.0 以上版本)来委托绑定事件:
<ul class="list"><li><a href="javascript:">导航1</a></li>
<li><a href="javascript:">导航2</a></li>
</ul> $('.list').find('a').on('click', function(){
$(this).addClass('active').siblings().removeClass('active')
})
这样.list里通过js动态创建的a节点也能响应click事件。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)