首頁 > web前端 > js教程 > 主體

jquery事件中mousedown和click如何區分?

黄舟
發布: 2017-06-28 09:19:48
原創
3027 人瀏覽過

click事件和mousedown事件在jquery中一般來說是容易分清楚的,但在某些情況下開發者會優先考慮到click事件,而沒能準確的定位事件。當我們在取得滑鼠各個鍵的事件值時,就會出現這樣的情況。

簡單的概念區分:

click:是指滑鼠放在某一個網頁元素上時,對該元素觸發了點擊動作,這個過程即click事件。 .click()可以呼叫一個回應函數,對click事件發生時進行回應,產生一些動作。

mousedown:指你的手指點按下滑鼠上的任一鍵,還沒有放開時的過程,這個過程其實不包括鍵被按下的那一瞬間,這一瞬間是非常短的,mousedown是你按下之後不放開,一直按著的過程。這個過程可以很漫長,和mouseup相比有明顯的差異。

最簡單的區分兩個事件的方法即,一個發生在電腦螢幕上,一個發生在滑鼠上。

那麼我們在遇到一些具體問題的時候,應該怎麼選擇這兩個不同的事件呢?舉一個很簡單的例子:我點擊了一個展開按鈕展開了某元素,現在,我需要一個點擊該元素之外的其他區域讓它自動收起來。

看起來很簡單,我們一看到「點擊」二字時首先想到的是如何使用click事件完成這個目標。然而我卻選擇了mousedown事件,因為在這個過程中,我考慮到只有用戶點擊滑鼠左鍵觸發該動作才是用戶想要的結果,用戶並不想在點擊中鍵或右鍵時也有同樣的效果,這時我們需要用到一個event.which的判斷,在對which的判斷時會遇到非常大的問題,具體請看這篇文章和這篇文章,click事件的觸發器並沒有which的屬性,而只有mousedown或mouseup的觸發器(滑鼠)才有,因此如果要使用which屬性,最好考慮的是mousedown/mouseup事件,而非click事件。

以上是jquery事件中mousedown和click如何區分?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!