这里的前两行javascript有什么区别?
HTML:
<html>
<body>
<form>
<input type="button" value="one" id="one" />
<input type="button" value="two" id="two" />
</form>
<script type="text/javascript" language="javascript" src="example.js"></script>
</body>
</html>
的javascript:
document.getElementById('one').onclick = one();
document.getElementById('two').onclick = function() {two();}
function one(){
alert('this pops up before the button is clicked. Afterwards, the button doesn\'t work.');
}
function two(){
alert('this pops up appropriately when the button is clicked.');
}
在页面加载之前显示Popone,然后按钮变得无法使用。单击第二个按钮并正常工作时,弹出两个显示。
答案 0 :(得分:0)
区别在于您如何将函数传递给onclick事件。执行=one();
时,它会立即评估函数并执行它。当您执行function(){two();}
时,它会等待单击以执行执行two();
的匿名函数。相反,您执行="one();"
然后它应该工作相同。