动态更改innerHTML后如何重新添加点击监听器?

时间:2017-10-31 13:23:46

标签: jquery html dom replace addeventlistener

我试图将标签转换为Shopify商店中通过第三方应用动态加载的内容中的标签,这意味着在页面加载完成后添加HTML。在进行转换之前,代码已经点击了#39;事件监听器通过第三方脚本添加到它们中。

我目前的代码如下:

var widgetHTML = $(".cbb-frequently-bought-selector-list").html();
widgetHTML = widgetHTML.replace(/<a /g, '<span ').replace(/<\/a>/g, '</span>');
$('.cbb-frequently-bought-selector-list').html(widgetHTML);

执行此代码后,原始&#39;点击&#39;事件听众不见了。

有没有办法临时保存对所有现有&#39;点击&#39;所有标签上的事件监听器,然后执行上面的代码,然后添加&#39;点击&#39;事件监听器返回替换标签的新标签?

1 个答案:

答案 0 :(得分:0)

使用jQuery的事件委托如下:

$(document).on('click','your_element_selector', function() {
   // your code    
});
相关问题