我在w3school上找到關於onmousedown,onmouseup和onclick事件的以下信息: onmousedown,onmouseup和onclick事件都是鼠標點擊的所有部分。首先當點擊鼠標按鈕時,onmousedown事件被觸發,然後,當釋放鼠標按鈕時,onmouseup事件被觸發,最後,當鼠標點擊完成時,觸發onclick事件。爲什麼onmouseup的效果永不生效?
後來我寫下面的代碼來測試,但onmouseup事件從未發生過? 我在發佈點擊後只顯示「點擊」,但從未出現「謝謝你」。任何人都可以請澄清,對我?謝謝。
<!DOCTYPE html>
<html>
<body>
<div onmousedown="mDown(this)" onmouseup="mUp(this)" onclick = "mClick(this)" style="background-color:#D94A38;width:90px;height:20px;padding:40px;">Click Me</div>
<script>
function mClick(obj)
{
obj.style.backgroundColor="#ec5ead";
obj.innerHTML="Clicked"
}
function mDown(obj)
{
obj.style.backgroundColor="#1ec5e5";
obj.innerHTML="Release Me"
}
function mUp(obj)
{
obj.style.backgroundColor="#FFFFFF";
obj.innerHTML="Thank You a lot"
}
</script>
</body>
</html>
因爲你正在*取代內容; 'mouseup'事件觸發,然後'click'事件在它之後觸發(足夠快,因爲你不能看到'mouseup'事件的效果)。如果追加到innerHTML屬性而不是設置新值會發生什麼? –
作爲一個方面說明,你可能想考慮另一個參考比w3schools ... –
它發生。你只需要點擊文本 –