-
keyup事件:
當(dāng)用戶在一個(gè)元素上第一次松手鍵盤上的鍵的時(shí)候,就會(huì)觸發(fā)它。使用方法與keydown是一致的只是觸發(fā)的條件是方法的
?
注意:
keydown是在鍵盤按下就會(huì)觸發(fā)
keyup是在鍵盤松手就會(huì)觸發(fā)
理論上它可以綁定到任何元素,但keydown/keyup事件只是發(fā)送到具有焦點(diǎn)的元素上,不同的瀏覽器中,可獲得焦點(diǎn)的元素略有不同,但是表單元素總是能獲取焦點(diǎn),所以對(duì)于此事件類型表單元素是最合適的。
查看全部 -
select事件只能用于<input>元素與<textarea>元素
select()方法同樣有三種使用方法,一種是直接使用,一種是通過觸發(fā)回調(diào)函數(shù)執(zhí)行操作,第三種是通過回調(diào)函數(shù)進(jìn)行操作但是可以接受一個(gè)參數(shù)。
查看全部 -
當(dāng)元素失去焦點(diǎn)時(shí)觸發(fā)blur()事件,與focus(in,out)等方法相同,只是在是否支持冒泡上面有本質(zhì)上的區(qū)別
查看全部 -
hover()方式等同于mouseenter()方式 + mouseleave()方式
$(selector).hover(handlerIn,?handlerOut)
handlerIn(eventObject):當(dāng)鼠標(biāo)指針進(jìn)入元素時(shí)觸發(fā)執(zhí)行的事件函數(shù)
handlerOut(eventObject):當(dāng)鼠標(biāo)指針離開元素時(shí)觸發(fā)執(zhí)行的事件函數(shù)
查看全部 -
mouseleave()方式與mouseout()方式對(duì)應(yīng)? 為鼠標(biāo)移出
作用同樣是可以減少不必要的觸發(fā)事件
查看全部 -
mouseover()方法觸發(fā)方式為當(dāng)觸發(fā)p元素響應(yīng)時(shí)div元素同時(shí)響應(yīng),
mouseenter()方法觸發(fā)方式為當(dāng)觸發(fā)p元素響應(yīng)時(shí)div元素不響應(yīng),只是p元素單獨(dú)響應(yīng),當(dāng)鼠標(biāo)從外部移動(dòng)到div或移動(dòng)出div元素時(shí)外部觸發(fā)響應(yīng),當(dāng)觸發(fā)p元素響應(yīng)時(shí)只是觸發(fā)p元素,比mouseover()方法的觸發(fā)次數(shù)少
查看全部 -
mouseover()方法移入,mouseout()方法移除
mousedown()方法點(diǎn)擊? mouseup()方法松開
mousemove()鼠標(biāo)移動(dòng)
查看全部 -
mousemove事件觸發(fā)需要以下幾點(diǎn):
mousemove事件是當(dāng)鼠標(biāo)指針移動(dòng)時(shí)觸發(fā)的,即使是一個(gè)像素
如果處理器做任何重大的處理,或者如果該事件存在多個(gè)處理函數(shù),這可能造成瀏覽器的嚴(yán)重的性能問題
查看全部 -
mousedown事件觸發(fā)需要以下幾點(diǎn):
mousedown強(qiáng)調(diào)是按下觸發(fā)
如果在一個(gè)元素按住了鼠標(biāo)不放,并且拖動(dòng)鼠標(biāo)離開這個(gè)元素,并釋放鼠標(biāo)鍵,這仍然是算作mousedown事件
任何鼠標(biāo)按鈕被按下時(shí)都能觸發(fā)mousedown事件
用event 對(duì)象的which區(qū)別按鍵,敲擊鼠標(biāo)左鍵which的值是1,敲擊鼠標(biāo)中鍵which的值是2,敲擊鼠標(biāo)右鍵which的值是3
mouseup事件觸發(fā)需要以下幾點(diǎn):
mouseup強(qiáng)調(diào)是松手觸發(fā),與mousedown是相反的
mouseup與mousedown組合起來就是click事件
如果用戶在一個(gè)元素上按下鼠標(biāo)按鍵,并且拖動(dòng)鼠標(biāo)離開這個(gè)元素,然后釋放鼠標(biāo)鍵,這仍然是算作mouseup事件
任何鼠標(biāo)按鈕松手時(shí)都能觸發(fā)mouseup事件
用event 對(duì)象的which區(qū)別按鍵,敲擊鼠標(biāo)左鍵which的值是1,敲擊鼠標(biāo)中鍵which的值是2,敲擊鼠標(biāo)右鍵which的值是3
查看全部 -
click方法用于監(jiān)聽用戶單擊操作,另一個(gè)方法是dbclick方法用于監(jiān)聽用戶雙擊操作。
?$("ele").click()??//手動(dòng)指定觸發(fā)事件
$("#test").click(function()?{ ????//this指向?div元素 });
click事件其實(shí)是由mousedown與mouseup 2個(gè)動(dòng)作構(gòu)成,所以點(diǎn)擊的動(dòng)作只有在松手后才觸發(fā)
查看全部 -
value值是在keydown事件之后和在keyup事件之前才傳遞過去的 所以在第一個(gè)框里輸入第一次字符是不顯示的而在第二個(gè)框里是顯示的
keydown事件觸發(fā)在文字還沒敲進(jìn)文本框,這時(shí)如果在keydown事件中輸出文本框中的文本,得到的是觸發(fā)鍵盤事件前的文本,而keyup事件觸發(fā)時(shí)整個(gè)鍵盤事件的操作已經(jīng)完成,獲得的是觸發(fā)鍵盤事件后的文本
查看全部 -
看不懂
在之前2.8與2.9節(jié)我們學(xué)過了表單處理事件focusin事件與focusout事件,同樣用于處理表單焦點(diǎn)的事件還有blur與focus事件
它們之間的本質(zhì)區(qū)別:
是否支持冒泡處理
舉個(gè)簡(jiǎn)單的例子
<div> ??<input?type="text"?/> </div>
其中input元素可以觸發(fā)focus()事件
div是input的父元素,當(dāng)它包含的元素input觸發(fā)了focus事件時(shí),它就產(chǎn)生了focusin()事件。
focus()在元素本身產(chǎn)生,focusin()在元素包含的元素中產(chǎn)生
blur與focusout也亦是如此
具體參考下案例,給出來的區(qū)別
查看全部 -
jquery 的hover也會(huì)出現(xiàn)冒泡事件
查看全部 -
如果在p元素與div元素都綁定mouseover事件,鼠標(biāo)在離開p元素,但是沒有離開div元素的時(shí)候,觸發(fā)的結(jié)果:
p元素響應(yīng)事件
div元素響應(yīng)事件
這里的問題是div為什么會(huì)被觸發(fā)? 原因就是事件冒泡的問題,p元素觸發(fā)了mouseover,他會(huì)一直往上找父元素上的mouseover事件,如果父元素有mouseover事件就會(huì)被觸發(fā)
所以在這種情況下面,jQuery推薦我們使用 mouseenter事件
mouseenter事件只會(huì)在綁定它的元素上被調(diào)用,而不會(huì)在后代節(jié)點(diǎn)上被觸發(fā)
查看全部 -
? //多事件綁定一
? ? ? ? $("ul").on('click',function(e){
? ? ? ? ? ?alert('觸發(fā)的元素是內(nèi)容是: ' + e.target.tagName)
? ? ? ? })
e.target.tagName 點(diǎn)擊哪個(gè)li就是哪個(gè)li,點(diǎn)擊ul就是ul.
this? 因?yàn)閖s是會(huì)冒泡的,所以點(diǎn)擊li的時(shí)候,this會(huì)變成ul.
查看全部
舉報(bào)