发生onclick(“ open()”)事件后html页面消失

时间:2019-06-14 21:29:48

标签: javascript html

我写的是

html>
<head>

</head>
<body>
    <span onclick = "open()">open</span>

<script src= "script.js"></script>
</body>
</html>

和javascript为

function open(){

   var id = "10";

}

每当我在浏览器中单击打开的文本时,整个页面就会被擦除。是“打开”的javascript保留字,与它起作用的任何方法名称一样(屏幕不会消失)。只是想知道幕后发生了什么。任何信息表示赞赏。

2 个答案:

答案 0 :(得分:1)

最近我实际上遇到了一个类似的问题-发生这种情况的原因是因为open()被解释为window.open()。当没有参数传递给该函数时,它将导航到空白窗口。

您也许可以通过将脚本放在头来规避此问题,但是更好的建议是为函数命名更有意义。

旁注:不确定浏览器之间的行为是否相同,但是在Google Chrome浏览器中,调用open()会打开一个新标签。

此处的功能的进一步说明:https://developer.mozilla.org/en-US/docs/Web/API/Window/open

答案 1 :(得分:1)

作为一般规则,如果以这种方式编程,将会有很多冲突-您需要更加模块化-使用object / json进行命名空间

<html>
   <body>
      <span onclick = "mylibrary.open()">open</span>

      <script src= "script.js"></script>

   </body>

</html>

和javascript

var mylibrary = {
   open : function(){
      var id = "10";

   }

}

大约...