<!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>单击事件 </title> <script type="text/javascript"> function openwin(){ window.open('http://www.imooc.com','_blank','height=600,width=400,top=100,toolbar=no,left=0,menubar=no,scrollbars=no,status=no');} </script> </head> <body> <form> <input name="点击我" type="button" value="点击我" onclick="openwin()"/> </form> </body> </html>
在这里我把function openwin()改成function open(),同时这个也改onclick="open()"
function是用来定义函数名的,所以函数名字可以改成别的,可是我改了之后却不能弹出窗口了,
难道对于特定的函数,有特定的函数名吗?
因为window对象已有open命名的方法了,所以JS在执行时就去执行window的open方法了,但又因为你open方法没有传输参数,所以open方法无法执行。
你可以这样试试 在 onclick="open('http://www.imooc.com','_blank','height=600,width=400,top=100,toolbar=no,left=0,menubar=no,scrollbars=no,status=no')" 看看效果以前一样
由此可以得出结论:如果函数名称和系统存在的函数名称相同,则优先执行系统函数(个人结论,不一定正确)。