Jsdom: 内联事件处理程序仍然不太正确

创建于 2017-08-20  ·  3评论  ·  资料来源: jsdom/jsdom

两个症状:

  • [ ] inline-event-handler-ordering.html 没有通过(即使在 WPT 滚动以修复曾经存在于其中的错误之后)
  • [x] EventTarget-impl.js 仍然有内联事件处理程序的东西,但这真的不再需要了(在 https://github.com/tmpvar/jsdom/pull/1950 中修复)

在我从目前的混乱中解脱出来后进行调查。

最有用的评论

@snuggs认为这不会影响你们,只是通过属性指定的侦听器和通过 JS 注册的侦听器之间的执行顺序相当微妙,我们还没有完全正确。

所有3条评论

希望混乱不会太糟糕@domenic。 话虽如此...

snuggsi Web 组件库中,我们执行以下约定:

<foo-bar onclick=onbaz></foo-bar>

<script>

Element `foo-bar`

(class extends HTMLElement {

  onbaz (event)
    { console.log (this, 'is the `<foo-bar>` element') }
})

</script>

我们基本上遍历自定义元素的子元素,在GlobalEventHandlers中查找属性并“注册”完全相同名称的类方法。 然后.bind对自定义元素 _(或如上例中显式注册.childNode )_ 的处理程序。 尝试坚持久经考验的经典活动注册。 _(很惊讶没有框架能真正做到这一点。实际上是一个简单的算法)_

这会影响我们吗? 或者这与GlobalEventHandlers无关。 我们使用 jsdom 进行测试(当然)。 这是否也暗示了 html 规范中的逐步淘汰?
在我看来,这将与 🛀 🚿 一起丢掉 🍼 👶 。

提前感谢您的提醒!

/cc @brandondees

@snuggs认为这不会影响你们,只是通过属性指定的侦听器和通过 JS 注册的侦听器之间的执行顺序相当微妙,我们还没有完全正确。

复制@TimothyGu感谢您的快速回复! 永远喜欢关注你们的工作。 🙏

此页面是否有帮助?
0 / 5 - 0 等级

相关问题

cg433n picture cg433n  ·  3评论

tolmasky picture tolmasky  ·  4评论

vsemozhetbyt picture vsemozhetbyt  ·  4评论

drewish picture drewish  ·  4评论

Progyan1997 picture Progyan1997  ·  3评论