3

我在用

 document.elementFromPoint(x,y);

函数来找出鼠标点击的底层元素。当我用 firefox 打开相应的 html 文件时,它工作正常。但是我已经编写了一个使用 gtkmozembed 打开 html 文件的应用程序。当我使用我的应用程序打开 html 文件并单击页面时,它会出现以下错误:

TypeError: document.elementFromPoint is not a function 

为什么会这样?实际上所有适用于 firefox 的功能,也适用于 gtkmozembed 对吗?(因为 firefox 和 gtkmozembed 都在内部使用 gecko 引擎)

4

1 回答 1

3

确实,Firefox 和 gtkmozembed 都使用 Gecko 渲染引擎,但是您尝试代码的引擎版本可能不同,因此该功能可能可用也可能不可用。

值得注意的是,实际上几乎没有必要使用此功能 - 您可以从另一端解决问题 - 检查 event.target 属性以查看鼠标事件的起源。

顺便说一句:document.elementFromPoint 函数是另一个源自 Internet Explorer 的伟大但专有技术的例子。与许多其他好的特性一样,它最近才被包括 Mozilla 在内的许多供应商采用并实施。

于 2010-05-25T13:05:56.483 回答