为什么我js动态添加的a标签相应的js会失效

JavaScript025

为什么我js动态添加的a标签相应的js会失效,第1张

个人理解

我猜测的会失效,应该是通过jquery绑定的事件失效了吧?

如何解决

// 在动态添加元素后,如果之前绑定事件是通过click 绑定,则动态添加的元素不会被绑定。

//可以通过delegate 进行绑定

$('body').delegate('a','click',function(){

    //此处为处理过程

})

//而且要保证$('body') 中的选择器不是动态添加的。

 3. 如果该回答没有对应您的问题,请您贴出您的问题代码。

是iscroll.js阻止了a的行为。

解决方法:打开iscroll-probe.js,然后找到preventDefaultException方法。

然后修改为:

// preventDefault: true,

preventDefault: false,//(把这句加上去哦)

preventDefaultException: { tagName: /^(INPUT|TEXTAREA|BUTTON|SELECT|A)$/ }, //(这个后面加|A,因为iscroll阻止了A的默认事件)

顶楼上,因为是用js动态添加的,事件没有在初始化绑定才会出现这个现象。

如果楼上代码有可能有问题的,试试把类名和click对调。

$(document).on('click','.abc', function(){

     ClickHandler.clicked($(this).attr("url"))

})