1.什么情况下失效
(1)onclick事件绑定只对dom中存在的元素有效,对于我们后来动态增加的元素是监测不到,所以绑定不了
(2)同样,当你使用var aa = document.getElementsByTagName("动态生成的元素")来获取动态生成的元素的时候也是获取不到的。
(3)因为网页只会执行一次初始化绑定,之后动态生成的dom元素也是监测不到的。
2.解决办法
使用jQuery中的委托(on),将子元素的事件绑定到父元素上(先给已存在的DOM元素绑定onclick事件(button的父级),利用事件委托实现dom事件绑定,最后代码就改成了)
注:父元素一定是在页面初始化就存在的DOM元素。
image.png