#JavaScript#在Html中,針對元素的單擊操作,其實是分為3部分完成的,分別為:滑鼠左鍵按下、鬆開左鍵、最後完成了單擊事件。
因此,單擊事件是由onmousedown、onmouseup、和onclick一起形成的。
(1). 首先當用戶按下滑鼠左鍵時,此時觸發的是 onmousedown 事件。
(2). 當鬆開按下的左鍵時,觸發的是 onmouseup 事件。
(3). 最後,當完成按下+鬆開左鍵時,就觸發了onclick事件。
注意:滑鼠按下、滑鼠鬆開包括了滑鼠的左鍵和右鍵。但是對於onclick單擊事件,則只是滑鼠左鍵單擊時觸發的。
<!DOCTYPE html><html><head><title></title> <script type="text/javascript"> //當滑鼠按下時 function down() { var btn = document.getElementById("Button1"); btn.value = "滑鼠已按下"; } //當滑鼠鬆開時 function up() { var btn = document.getElementById("Button1"); btn.value = "滑鼠已鬆開"; } //產生的單擊事件 function aClick() { var btn = document.getElementById("Button1"); btn.value = "已單擊"; } </script></head><body> <input id="Button1" type="button" onmousedown="down()" onmouseup="up()" value="執行" /> <input id="Button1" type="button" onclick="aClick()" value="單擊我" /></body></html>
在此代碼中,使用了JavaScript的3個函數來實現滑鼠的按下、鬆開和單擊事件,其中按下和鬆開是在一個input標記上同時實現的。而單擊是在另外一個input標記上實現。
將上面的html+JavaScript代碼運行一下結果:
在上圖中,我們可以看到第一個按鈕上的文字顯示「滑鼠已按下」,表示此時我們按下了滑鼠左鍵,觸發了onmousedown事件。
當鬆開了滑鼠左鍵後,第一個按鈕顯示成了「滑鼠已鬆開」,表示觸發了onmouseup事件。當在第2個按鈕上直接按下+鬆開,則就會觸發onclick事件,實現單擊效果。