javascript - 添加、删除和再次添加元素会删除其事件

标签 javascript jquery

我有一个带有 ID 的超链接,单击该链接将使用 JQuery 执行特定事件。 JQuery 在文档加载时记录此链接的存在。用户访问过程中的某个时间。我删除了该链接并稍后重新添加。但是,在删除并添加该链接后单击该链接时,该链接不会再次被触发。

为什么会出现这种情况?我该如何补救?与事件绑定(bind)有关?或者我应该添加一个 onclick 属性吗?

最佳答案

您一直在使用这样的标记来添加点击事件:

$('#speciallink').click(function(){
  // do something
  return false;
});

这会将事件绑定(bind)到当时选择的元素。

删除链接并再次添加它,将有效地创建一个新元素,而无需此事件。您可以使用“live”方法添加将应用于与规则匹配的事件的规则,即使这些元素是在创建规则后创建的:

$('#speciallink').live("click",function(){
  // do something
  return false;
});

关于javascript - 添加、删除和再次添加元素会删除其事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1249747/

相关文章:

javascript - 使用react在父组件中执行子组件操作

javascript - jquery 立即加载内容,然后每 10 秒更新一次

在 Div 中发布的 Javascript

javascript - 将数字列表转换为代码

javascript - 通过单击 anchor 显示和隐藏两个图标

jquery - 点击监听器无法从使用 jsondata 生成的 html 中工作

jquery - 为什么我的内容框在此扩展功能中无法正常工作?

jquery - 如何通过 CSS 在滚动时同时更改文本和图像?

Javascript Function.prototype.call() 函数

javascript - 改变 svg 对象的颜色?