$('.top-nav-son-li a').on('click',function(){
alert(11);
})
a节点是动态插入的,但是为什么无效呢?
jquery版本 "jquery": "^3.1.1"
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
on有两种模式:jquery on api
jquery on api 中文
第一种:
你那种
on和click无差别第二种:
采用 @StinsonZhao 的
on事件委托绑定模式:
事件委托绑定模式下,即使是执行on()函数之后新添加的元素,只要它符合条件,绑定的事件处理函数也对其有效。
扩展
上古时代动态绑定用
delegate()、live()因为是动态生成的,请使用事件代理
因为你的dom节点还没有渲染出来出来你的点击事件就绑定上了,
可以设置一个定时器,或者注意一下节点添加和事件绑定的顺序。
动态插入的dom绑定事件,需要在dom插入完成后绑定事件,或者使用on的另一种写法
次序不对,等到你的a完全加载出来之后调用js,才能出来效果。