[英]How do you programmatically determine to which events an HTML object can listen for?
我一直在查看developer.mozilla.org上的文档和Apple dev文档,但找不到能够说明您是否可以以编程方式确定特定HTML标记是否支持给定eventListener的文档。
就像我知道的那样, <script>
标记将不支持单击侦听器,因为没有要单击的内容,但是我怎么知道呢?
还是禁止这种情况,每个标签支持哪些事件?
根据Perfection Kills的说法,除了少数情况,您可以:
诀窍在于,许多现代浏览器将与事件名称相对应的属性报告为元素中存在。
基本上,代码如下所示:
'onclick' in document.documentElement; // true
'onclick2' in document.documentElement; // false
他使用它来检测各种浏览器中的事件支持,但也可以用来检测元素是否支持事件:
必须在实际上可能触发该事件的元素上检查事件。
因此,您还会得到如下结果:
'onreset' in document.documentElement; // false
'onreset' in document.createElement('input'); // true
我告诉你读这篇
...而且您必须想到的最好的事情是,事件仅适用于DOM对象。 然后,DOM中的所有对象都可能发生事件(但请阅读列表)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.