这是我的代码:
<body>
<button id="mybtn">Click Me!</button>
<script>
document.getElementById("mybtn").onclick = sum(2,5);
function sum(a,b) {
document.getElementById("x").innerHTML = a + b;
}
</script>
</body>
为什么文档在点击按钮之前显示7?
答案 0 :(得分:4)
那里发生的事情是你正在执行该功能而不是分配它
这是一个解决方案:
document.getElementById("mybtn").onclick = function(){ sum(2,5) };
答案 1 :(得分:0)
除了@ NetaMeta的答案,您还可以使用Function.prototype.bind()方法从sum
函数创建新函数并添加参数:
document.getElementById("mybtn").onclick = sum.bind(null, 2, 5);