suchen

Heim  >  Fragen und Antworten  >  Hauptteil

javascript - js如何克隆node事件

clonenode(true)可以克隆属性,但是事件似乎没有克隆,如何克隆事件?

高洛峰高洛峰2775 Tage vor501

Antworte allen(3)Ich werde antworten

  • 怪我咯

    怪我咯2017-04-10 17:01:26

    clonenode是无法把克隆的节点的事件也复制过来的。

    解决方法:

    • 写一个copy函数,可以用getEventListeners方法获取要克隆的节点的所有事件(有兼容性问题)。

    • 用事件委托。

    • 如果你用了jQuery,你可以用.clone()方法。

    Antwort
    0
  • 黄舟

    黄舟2017-04-10 17:01:26

    还是重新绑定事件吧,我在用爱妹子UI的时候也遇到过,我clone下拉组件,如果连事件一并clone的话,发现clone出来的下拉组件点击下拉是被克隆的那个(即点击clone出来的下拉框,被克隆的那个下拉列表被打开)。我当时的解决办法是,调用官方提供的selected样式复写的方法,其实原理也就是重新绑定事件。

    Antwort
    0
  • 怪我咯

    怪我咯2017-04-10 17:01:26

    一般都有只复制dom,也有复制dom+绑定的事件功能选择的,可以查一下接口

    Antwort
    0
  • StornierenAntwort