![](/img/trans.png)
[英]Why can't I directly assign document.getElementById to a different function?
[英]Why can't I assign a function directly?
此代碼調用f()
函數:
<p id="firstp">Hello!</p>
<script>
function f() {
doSomething();
};
document.getElementById("firstp").onmouseover = function() {
f();
};
</script>
但是,如果我這樣寫,它將停止工作:
document.getElementById("firstp").onmouseover = f();
當我直接調用函數時,為什么沒有設置事件處理程序?
因為您不想調用該函數,所以只想告訴瀏覽器在發生mouseover事件時應調用該函數。 f()
(函數名稱后的圓括號)調用函數並將f
返回的值分配給.onmouseover
。 您想要將對f
的引用分配給.onmouseover
,所以您正在尋找的是
document.getElementById("firstp").onmouseover = f;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.