代码之家  ›  专栏  ›  技术社区  ›  Senica Gonzalez

删除添加了eval的事件侦听器

  •  1
  • Senica Gonzalez  · 技术社区  · 15 年前

    我会尽力解释。。。

    当再次单击pageA上的按钮时,是否有一个函数或某些东西可以删除该评估中添加的所有事件侦听器和数据。

    对于eval数据,它并没有真正添加到页面本身,我只需在页面上删除一个文本,就可以消除所有的问题,但是事件侦听器肯定会留在页面上。

    2 回复  |  直到 15 年前
        1
  •  4
  •   Cristian Sanchez    15 年前

    http://docs.jquery.com/Namespaced_Events

    例如,让数据中的代码使用命名空间添加所有新事件:

    $(node).bind("click.myNameSpace", fn);
    

    $(node).unbind("click.myNameSpace") 当然,这是假设你知道它们被添加到了什么元素。如果您不知道添加的事件类型,也可以这样做 $(node).unbind(".myNameSpace") 它将删除命名空间下的所有事件。

        2
  •  0
  •   Community CDub    8 年前

    在您之前,只需复制特定按钮上当前附加的所有事件处理程序可能会更容易 eval 返回的javascript。然后取消绑定所有事件(与 评估

    :似乎有人已经有过类似的问题: jQuery: Unbind event handlers to bind them again later

    我忍不住要问,你难道不能控制返回的JS吗?因为如果你这样做了,最好是确保从一开始就不发送恶意内容。