要求Javascript注意多个元素事件的模式?

时间:2016-10-19 01:16:35

标签: javascript javascript-events

我正在编写一个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库将注意哪些元素的好模式是什么?

2 个答案:

答案 0 :(得分:2)

你有很多选择。也许尝试使用data代码:

<textarea name="blah" data-monitored="true">

在您的JS中,您使用如下方法收集所有这些元素:

var nodeList = document.querySelectorAll("[data-monitored='true']");

答案 1 :(得分:0)

首次加载时使用onfocus事件处理程序和fire focus事件有什么用?然后,您将像处理watch函数一样管理此处理程序中的多个事件。