Javascript 为什么设置为';onClick';作为事件处理程序未被识别为语法错误?
我的JavaScript代码是:Javascript 为什么设置为';onClick';作为事件处理程序未被识别为语法错误?,javascript,javascript-debugger,Javascript,Javascript Debugger,我的JavaScript代码是: var headline = document.getElementById("mainHeading"); headline.onClick = function() { headline.innerHTML = "You clicked the headline."; }; 但当我点击标题时什么也没发生。当我使用onclick而不是onclick(不带大写字母C)时,它才起作用 问题是,当我使用Chrome DevTools和Firebug进行调试
var headline = document.getElementById("mainHeading");
headline.onClick = function() {
headline.innerHTML = "You clicked the headline.";
};
但当我点击标题时什么也没发生。当我使用onclick
而不是onclick
(不带大写字母C)时,它才起作用
问题是,当我使用Chrome DevTools和Firebug进行调试时,它们不会将onClick
显示为语法错误
有谁能告诉我如何调试它吗?他们不会将
onClick
显示为语法错误,因为它不是
您要做的是在对象headline
上设置一个名为onClick
的变量作为函数。一切都很好。这里没有错误
但不会调用它,因为当发生单击时,“浏览器”将调用onclick
如果你自己不点击onClick
,那就永远不会
使用
onclick
它们不会将onclick
显示为语法错误,因为它不是
您要做的是在对象headline
上设置一个名为onClick
的变量作为函数。一切都很好。这里没有错误
但不会调用它,因为当发生单击时,“浏览器”将调用onclick
如果你自己不点击onClick
,那就永远不会
使用
onclick
事件为(全部小写)。JavaScript区分大小写,因此必须匹配大小写。设置onClick
时,您正在将元素的自定义属性设置为指定的函数。元素存储该值,但没有任何对象访问该属性。这是JavaScript的一个特性,您可以在任何对象上设置任意属性,因此调试器中没有任何东西可以让您捕捉到这一点 事件为(全部小写)。JavaScript区分大小写,因此必须匹配大小写。设置onClick
时,您正在将元素的自定义属性设置为指定的函数。元素存储该值,但没有任何对象访问该属性。这是JavaScript的一个特性,您可以在任何对象上设置任意属性,因此调试器中没有任何东西可以让您捕捉到这一点 “有谁能告诉我如何调试它吗?”遗憾的是,使用错误的属性名并不是那么容易调试的。但是,函数没有被调用的事实已经告诉您没有正确绑定事件处理程序。然后您应该看看如何绑定事件处理程序,然后您会注意到您使用了onClick
,而不是onClick
。并不是所有的东西都可以调试,有些东西你必须学习。“有谁能告诉我如何调试它吗?”遗憾的是,使用错误的属性名并不是那么容易调试的。但是,函数没有被调用的事实已经告诉您没有正确绑定事件处理程序。然后您应该看看如何绑定事件处理程序,然后您会注意到您使用了onClick
,而不是onClick
。并不是所有的东西都可以调试,有些东西你必须学习。由于设置onClick
不是语法错误,您可以通过检查代码是否执行来捕获此错误,也就是说,在headline.innerHTML…
行设置断点,然后单击#main heading
元素,并查看断点未被命中。由于设置onClick
不是语法错误,您可以通过检查代码是否执行来捕获此错误,也就是说,通过在headline.innerHTML…
行设置断点,然后单击#maintheading
元素,并查看断点是否未被击中,可以看到断点。