我正在编写一个Javascript库来监控用户如何与表单字段进行交互。它必须监视给定元素的多个事件,因此我不能使用onblah处理程序。
我希望HTML作者决定监控哪些字段。我以为我会提供这样的东西:
<script src="formWatch.js"></script>
<form ...>
<textarea name="blah" onload="watch(this)"/>
<input type="submit" value="Submit" />
</form>
然后watch()
会在元素上注册各种事件处理程序。但似乎onload
只会触发加载资源的元素?
允许HTML作者决定Javascript库将注意哪些元素的好模式是什么?
答案 0 :(得分:2)
你有很多选择。也许尝试使用data代码:
<textarea name="blah" data-monitored="true">
在您的JS中,您使用如下方法收集所有这些元素:
var nodeList = document.querySelectorAll("[data-monitored='true']");
答案 1 :(得分:0)
首次加载时使用onfocus
事件处理程序和fire focus
事件有什么用?然后,您将像处理watch
函数一样管理此处理程序中的多个事件。