gpt4 book ai didi

JavaScript 函数名 alt()

转载 作者:搜寻专家 更新时间:2023-11-01 05:10:36 26 4
gpt4 key购买 nike

如果函数名称是“alt”,我得到错误:“alt 不是一个函数”。所有其他名称都有效。这是代码:

<!DOCTYPE HTML>
<html>
<head>
</head>
<body>
<input type="button" value="click me" onclick="alt('dato',28);"/>
<script type="text/javascript">
window.onload = function(){
alt = function(name,age){
alert(name + " " + age);
}
}
</script>
</body>
</html>

请将函数名称从“alt”更改为任何其他允许的名称,以查看它是否有效。

谁能解释一下发生了什么?

最佳答案

发生这种情况的原因是在 onclick 内属性,this指的是附加了属性的元素。现在,alt是一个标准的属性名称,由于您没有指定 alt,因此您的按钮将以未设置的形式开始。 HTML 中的属性(alt 不需要 input 属性,因此无需添加)。

简而言之,alt指的不是全局变量 window.alt您在脚本中设置的,但指的是元素的 alt属性,开始时未设置。

所以当你运行 onclick="alt('dato',28);" ,它被隐含地解释为:onclick="this.alt('dato',28);" .

获取alt您在全局范围内设置的,而不是 alt这是每个 HTML 元素的一部分,您需要显式地进入全局范围,如下所示:

onclick="window.alt('dato',28);"

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

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com