Google Chrome Uncaught TypeError: object is not a function

时间:2022-07-05 02:11:58

<html>
  <script type="text/javascript">
    function testForm(){
      alert("hello world ! ");
    }
  </script>
<body>
  <form name="testForm" action="" >
    <input type="button" onclick="testForm()" value="submit"/>
  </form>
</body>
</html>

今天在使用Google Chrome调试一个程序时,发现了Chrome浏览器的一个bug。说大不大,不过挺气人的。找了好一会才找出了错误原因。

程序源码如上所示。

再单击这个button时,IE,Firefox 都可以正常显示成提示框“hello world !”。但就是chrome不行。

其实问题就出在代码充红色的两个同名部分。只要这两部分不重名,程序就可正常运行。

为了避免这样的问题。在为元素的name,id,class属性时,尽量不要与脚本程序中的函数名称同名,也不要和页面元素的固有事件名称重名,如onclick , onkeydown。