您不能直接将侦听器分配给 javascript 变量,但可以通过以下方式间接执行。
您可以将变量的值保存在 div 或任何 html 节点中
例如
<div id="variable-name" style="display:none;">variable-value</div>
或者
<span id="variable-name" style="display:none;">variable-value</span>
然后使用下面的js来监控节点的任何变化。这将适用于 YUI3 或更高版本。(我不确定 YUI2.x)
var Y = YUI().use('node', 'event', function (Y) {
// node and event modules are loaded.
});
var demo = Y.one('#variable-name');
// And we can listen for DOM events.
demo.on('change', function (e) {
alert('value changed');
});
有关监听 YUI 节点事件的更多信息
http://yuilibrary.com/yui/docs/event/#listening-for-events
和可用的事件列表
http://yuilibrary.com/yui/docs/event/#event-whitelist
编辑
基于http://www.quirksmode.org/dom/events/change.html,
更改事件仅在其表单字段时触发
例如input
textarea
和select
所以当 div 的内容发生变化时不会触发 change 事件。