这是脚本:http: //jsbin.com/itusut/6/edit
嗨,我有功能:
function on(t, e, f) {
if ( e.length ) {
var l = e.length,
n = 0;
for ( ; n < l; n++ ) {
e[n].addEventListener(t, f, false)
}
} else {
e.addEventListener(t, f, false);
}
}
如果我们这样做,var handle = document.getElementsByClassName('some-class');
那么handle
是一个节点列表。
如果我们这样做,var handle = document.getElementById('an-id');
那么handle
是单个节点。
问题是,当我选择<form id="login-form">
它返回数组而不是单个元素时。
所以,我的on
功能是失败的。该功能使用elm.length
过滤器。一切都很好,除了<form>
。如何解决这个问题?我知道elm.length<form>
在单节点元素上无法正常工作。
你会帮忙吗?非常感谢