看了半天终于把楼主的意思看明白了,囧。。楼主你这代码也不贴,谁看的出啦啊

天衣無縫D亡靈 answered 8 years, 6 months ago

对比下 55的修改删除 与 之前的修改删除 源码是否相同

老夫石更啦 answered 8 years, 6 months ago

后生成的节点 事件没有绑定上吧。 这样做,


 $('父节点页面生成时就在的').on('click','后生成的需要绑定的节点',function() {

})

冬天的冰窖 answered 8 years, 6 months ago

楼上给出的答案我感觉是正确的,我理解这也是动态添加的元素没有绑定事件的原因
代码


 $('父元素').on('click', '需要绑定事件的元素选择器比如 .li', function() {
    //TODU
})

super61 answered 8 years, 6 months ago

原因就是在 Dom Ready 时,你 55 那个 li 还没有在 Dom Tree 里,这种场景需要使用事件代理:


 $('ul').on('click', 'li', function() {
    // ...
});

现在的逻辑是这样的:

在 Dom Ready 时,$('ul') 是已经在 Dom Tree 里的,那么就把事件委托给 ul,每次点击时,从 ul 节点去找它的子级 li。

营业街店主 answered 8 years, 6 months ago

如果不是使用事件委托的形式来绑定事件。那么后面生成的元素都是没有被绑定事件的。

所以说,你需要 《JavaScript事件代理和委托》

zzcat answered 8 years, 6 months ago

Your Answer