为什么onclick监听器会提供不同的输出?

时间:2012-02-15 20:47:34

标签: javascript html javascript-events safari

这是一个我无法破解的坚果。请考虑以下HTML正文:

<body onload="console.debug(document.documentElement);">
    <a href="#" onclick="console.debug(document.documentElement);">Click me</a>
</body>

第一个调试语句的输出和第二个调试语句的输出(单击链接时触发)在Safari上的Inspector控制台中有所不同。单击链接后,两个输出如下所示:

> HTMLHtmlElement
> <html>...</html>

两者都是可扩展的,但第一个似乎更像是一个正确的DOM元素及其所有的螺母和螺栓(原型,事件监听器,子和父关系等),而第二个只显示元素及其子元素HTML。

Firefox中的Firebug控制台中给出的输出没有区别,其中每个输出仅链接到HTML检查器。

1 个答案:

答案 0 :(得分:0)

这可能是safari中的一个错误,因为Firefox和IE9都会提供相同的输出。

如果确实有问题,您可以举报错误:https://developer.apple.com/bugreporter/

或者它与引擎有所不同。