JavaScript 函数关闭(){}

标签 javascript

<分区>

我在 JS 中创建了一个名为 close 的函数

function close() {...}

并有一个onclick调用

onclick="close()"

但它不会起作用。如果我将该函数重命名为任何名称,它就可以工作。难道是JS中禁止使用名为close()的函数?

最佳答案

为了在 onxyz 属性样式的事件处理程序中使用,您的函数必须是全局的。不要调用全局函数 close,因为全局变量成为 window 对象的属性,1 并且它有一个名为 close 的属性(指的是关闭窗口的宿主函数)。您不能覆盖该属性,因此它是最终被使用的内置属性。 (然后关闭请求被忽略,有多种原因 Windows 可能不允许您通过代码关闭它们。)使用另一个名称(或更好:使其不是全局并将其连接到现代事件处理)。


1 除非在 ES2015 及更高版本中使用 letconstclass 创建全局。

关于JavaScript 函数关闭(){},我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40450783/

相关文章:

javascript - 如何用另一个字符串替换字符串中的某个单词并排除原子正则表达式中某些类型的所述单词

javascript cloneNode() 无法正常工作

javascript - Ember CLI 和 ASP.NET

javascript - 如何使用 puppeteer 查找网页上的所有资源?

javascript - 使用 Jquery 控制动态内容

javascript - 如何加载高分辨率背景图像而不影响页面加载时的大型内容绘制

javascript - 进度条下的状态文本

javascript - Ng-点击还是 Ng-更改?

javascript switch 中断检测到无法访问的代码

javascript - 简单的 Javascript 不能完全按照我想要的方式工作