【问题标题】:Event fired on select box (html) being populated在填充选择框 (html) 时触发的事件
【发布时间】:2009-09-11 14:17:23
【问题描述】:

我一直在想,如果浏览器在选择框中填充的浏览器会发生任何事件?我希望“onchange”被解雇,但这不会发生。

【问题讨论】:

    标签: javascript html css events


    【解决方案1】:

    正如已经指出的那样,onchange 事件负责用户进行的更改。但是,当您以编程方式更改 DOM 时,DOM Mutation event 会被某些浏览器触发,但该标准并未得到很好的支持。

    【讨论】:

      【解决方案2】:

      Mutation events 可能就是您要找的。它们具有 DOMSubtreeModified、DOMNodeInserted 等选项。显然 github 上有一个 jQuery 项目,包括对 Mutation-events 的支持。查看http://github.com/jollytoad/jquery.mutation-events/tree/master

      【讨论】:

      • 您不会在 IE 中获得突变事件,当然不会达到并包括版本 7。
      【解决方案3】:

      我不知道。在大多数情况下,被调度的唯一事件是那些由用户发起的事件。

      <select> 接收新选项在技术上是由浏览器启动的(即使它可能是由于用户操作而发生的)。

      虽然我同意,如果您可以监听任意 DOM 属性上的更改并绑定处理程序以对这些更改做出反应,这将是特别有用和酷的。

      但是,您可以查看 javascript 中的 signals and slots 实现,这可能会对您有所帮助。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2020-10-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-04-17
        相关资源
        最近更新 更多