由于JavaScript事件有很多,例如:
鼠标事件:onclick
键盘事件:onkeydown、onkeypress
表单事件:onblur、onchange
窗口事件属性:onerror、onload
因此,如果你遇到其它的JavaScript事件调用函数失效,解决方法也同理。
以我这里为例子:
今天我在调试代码的时候,发现我的纯原生JavaScript代码中的onblur事件调用函数失效了,没有调用成功,调试得到的结果是:
undefined
原因:
首先,我的函数是已经存在的,如果函数不存在就会出现“ xxxx is not a function“这样的错误。
因此,最终原因是我自己代码错了,多增加了一个括号所引起的。
解决方法
我错误的代码如下:
document.getElementById('alias').onblur = AliasUnique();
正确代码如下:
//console.log(document.getElementById('alias').onblur = AliasUnique);
document.getElementBy