我在FireFox中使用JavaScript,并遇到了以下示例中说明的问题:
当我点击单选按钮时,没有任何反应,也没有错误(在Firebug中)
如果我将函数的名称更改为do_click,并更改onclick,那么我会收到警报.
所以问题是:发生了什么?click似乎不是保留字或现有符号
内联事件处理程序中的代码作用于元素,就像它在with
块中一样.
因此,在onclick
处理程序中,名称click
解析为元素的click
方法.
这可以通过在处理程序中写入来证明alert(nodeName)
DOM元素具有本机click()方法.
以下将显示click是一种本机方法:
您可以将click函数注册为事件处理程序,如下所示.在处理程序中,this
将引用HTML元素.
function click() { alert("click"); } document.getElementById('foo').onclick = click;
在http://www.quirksmode.org/js/introevents.html上有一系列关于浏览器事件的优秀文章