javascript - Javascript 没有按照我的意图与 div 交互
问题描述
免责声明:我是一个完整的菜鸟,所以如果我错过了一些明显的东西,请不要对我尖叫。
我正在尝试获取外部 javascript 文件来更新元素,但它一直给我以下错误:
Uncaught ReferenceError: cannot assign to function call
这是我的代码:
<!DOCTYPE html>
<html lang="en">
<body>
<script src="magic.js"></script>
<button onclick="detclic()"></button>
<div id="htmldivone"></div>
</body>
</html>
javascript代码:
var i = 2;
var e = 1;
var o = e * 2;
function detclic() {
if (o <= i) {
i = i - o;
document.getElementById("htmldivone").innerHTML = o;
}
}
基本上我会给变量 ia 值 2 并且需要 3 次尝试才能更新元素,我不知道为什么。帮助?(这只是在你问之前我正在制作的一些愚蠢的迷你游戏。)
解决方案
在这一行:
<button onclick="detclic()"></button>
您引用然后引用的detclic()
函数#htmldivone
即使此时,解析器还没有达到:
<div id="htmldivone"></div>
也没有解析detclic()
函数。
替代方法:
使用内联事件侦听器的另一种方法(可以说是更清洁的方法onclick="detclic()"
)是:
onclick="detclic()"
从您的 HTML中删除;和addEventListener
改为在您的脚本中使用
像这样:
const myButton = document.getElementsByTagName('button')[0];
myButton.addEventListener('click', detclic, false);
推荐阅读
- protractor - 使用 Protractor 5.4.2 时,webdriver-manager 下载与 Chrome 74 不兼容的 2.46
- pyspark - 在 PYspark 中创建 RDD
- go - golang unmarshal map[string]interface{} 到一个包含带有 meta 的数组的结构
- mysql - 在后端存储临时提交的数据
- r - 是否有在 xts 中查找第一个非空元素的功能
- swift - Swift openURL更改返回应用程序的文本并保持网站登录
- reactjs - 这个 React 表单字段挂钩的正确类型是什么?
- ios - 调用“updateWeatherIcon(condition:)”的结果未使用,因此不会显示 UIImage
- wpf - 对 PInvoke 函数“RawPrinterHelper::OpenPrinter”的调用使堆栈不平衡
- excel - Hiding Rows on Another Sheet in a Protected Workbook