-
mousedown事件觸發需要以下幾點:
mousedown強調是按下觸發
如果在一個元素按住了鼠標不放,并且拖動鼠標離開這個元素,并釋放鼠標鍵,這仍然是算作mousedown事件
任何鼠標按鈕被按下時都能觸發mousedown事件
用event 對象的which區別按鍵,敲擊鼠標左鍵which的值是1,敲擊鼠標中鍵which的值是2,敲擊鼠標右鍵which的值是3
mouseup事件觸發需要以下幾點:
mouseup強調是松手觸發,與mousedown是相反的
mouseup與mousedown組合起來就是click事件
如果用戶在一個元素上按下鼠標按鍵,并且拖動鼠標離開這個元素,然后釋放鼠標鍵,這仍然是算作mouseup事件
任何鼠標按鈕松手時都能觸發mouseup事件
用event 對象的which區別按鍵,敲擊鼠標左鍵which的值是1,敲擊鼠標中鍵which的值是2,敲擊鼠標右鍵which的值是3
另外需要注意的是:
click與mousedown的區別:
click事件其實是由mousedown于mouseup 2個動作構成,所以點擊的動作只有在松手后才觸發
查看全部 -
dbclick與click事件不同的是:
click事件觸發需要以下幾點:
click事件其實是由mousedown與mouseup 2個動作構成,所以點擊的動作只有在松手后才觸發
dblclick又是由2個click疊加而來的,所以dblclick事件只有在滿足以下條件的情況下才能被觸發
鼠標指針在元素里面時點擊。
鼠標指針在元素里面時釋放。
鼠標指針在元素里面時再次點擊,點擊間隔時間,是系統而定。
鼠標指針在元素里面時再次釋放。
注意:在同一元素上同時綁定 click 和 dblclick 事件是不可取的。各個瀏覽器事件觸發的順序是不同的,一些瀏覽器在dblclick之前接受兩個 click 事件 ,而一些瀏覽器只接受一個 click 事件。用戶往往可通過不同的操作系統和瀏覽器配置雙擊靈敏度
查看全部 -
你這樣想好了
function a() {
$("button:eq(2)").click(1111, data)
}
function data(e) {
alert(e.data)?
}
兩個函數順序對調 (事實上都是一樣的) 我先執行函數a() 在click事件中傳入了數據111和函數data(),當觸發click事件時,調用函數data=====data(e)//因為此時的e就是click事件 所以 函數data()中的e.data就等于1111查看全部 -
triggerHandler與trigger的用法是一樣的,重點看不同之處:
triggerHandler不會觸發瀏覽器的默認行為,.triggerHandler( "submit" )將不會調用表單上的.submit()
.trigger() 會影響所有與 jQuery 對象相匹配的元素,而 .triggerHandler() 僅影響第一個匹配到的元素
使用 .triggerHandler() 觸發的事件,并不會在 DOM 樹中向上冒泡。 如果它們不是由目標元素直接觸發的,那么它就不會進行任何處理
與普通的方法返回 jQuery 對象(這樣就能夠使用鏈式用法)相反,.triggerHandler() 返回最后一個處理的事件的返回值。如果沒有觸發任何事件,會返回 undefined
triggerHandler只阻止它本身觸發的事件冒泡
這里$("input").triggerHandler("focus","沒有觸發默認聚焦事件");中的兩個參數是傳入input的focus事件中的,參數1也就是arg1已經指定的了要觸發的事件就是focus,參數arg2也就是要傳入input的focus事件中的title的值所以會彈出"沒有觸發默認聚焦事件”
查看全部 -
triggerHandler與trigger的用法一樣,重點看不同之處:
triggerHandler不會觸發瀏覽器的默認行為,triggerHandler("submit")將不會調用表單上的.submit()
.trigger()會影響所有與jQuery對象相匹配的元素,而。triggerHandler()僅影響第一個匹配到的元素
使用.triggerHandler() 觸發的事件,并不會在DOM樹中向上冒泡。如果它們不是由目標元素直接觸發的,那么它就不會進行任何處理
與普通的方法返回jQuery 對象(這樣就能夠使用鏈式用法)相反,.triggerHandler() 返回最后一個處理的事件的返回值。如果沒有觸發任何事件,會返回 undefined
查看全部 -
trigger事件還有一個特性:會在DOM樹上冒泡,所以如果要阻止冒泡就需要在事件處理程序中返回false或調用事件對象中的.stopPropagation() 方法可以使事件停止冒泡
查看全部 -
event.pageX和event.pageY: 獲取鼠標當前相對于頁面的坐標
event.preventDefault()方法: 阻止默認行為
event.stopPropagation()方法:阻止事件冒泡
event.which:獲取在鼠標單擊時,單擊的是鼠標的哪個鍵
event.currentTarget:在事件冒泡過程中的當前DOM元素
.this和event.target都是dom對象
查看全部 -
通過.on()綁定的事件處理程序
通過.off()方法移除該綁定
綁定2個事件
$("elem").on("mousedown mouseup",fn)
刪除一個事件
$("elem").off("mousedown")
刪除所有事件
$("elem").off("mousedown mouseup")
快捷方式刪除所有事件
$("elem").off()
查看全部 -
事件綁定在最上層div元素上,當用戶觸發在a元素上,事件將往上冒泡,一直會冒泡在div元素上。如果提供了第二參數,那么事件在往上冒泡的過程中遇到了選擇器匹配的元素,將會觸發事件回調函數。
查看全部 -
jQuery鼠標事件之mousemove事件
查看全部 -
hover() 方法是同時綁定mouseenter和mouseleave事件
$(selector).hover(handlerIn, handlerOut)
handlerIn(eventObject): 當鼠標指針進入元素時觸發執行的事件函數
handlerOut(eventObject): 當鼠標指針離開元素時觸發執行的事件函數
查看全部 -
mouseenter事件和mouseover的區別:冒泡的方式處理問題
查看全部 -
click事件觸發需要:click事件是由mousedown與mouseup 2個動作構成,所以點擊的動作只有在松手以后才觸發
dbclick事件觸發需要:dbclick是由2個click疊加而來的,鼠標指針在元素里面時點擊且釋放;再次點擊,點擊間隔時間,是系統而定,且再次釋放。
查看全部 -
click方法用于監聽用戶單擊操作;
dbclick方法用于監聽用戶雙擊操作;
方法一:$ele.click()
方法二:$ele.click(handler(eventObject))
方法三:$ele.click([eventData], handler(eventObject))
查看全部 -
方法 描述 $ele.click() 綁定$ele元素,不帶任何參數一般是用來指定觸發一個事件,用的比較少 $ele.click(?handler(eventObject)?) 綁定$ele元素,每次$ele元素觸發點擊操作會執行回調?handler函數,這樣可以針對事件的反饋做很多操作了,方法中的this是指向了綁定事件的元素 $ele.click(?[eventData?],?handler(eventObject)?) 使用與方法二一致,不過可以接受一個數據參數,這樣的處理是為了解決不同作用域下數據傳遞的問題 $ele.mousedown() 綁定$ele元素,不帶任何參數一般是用來指定觸發一個事件,可能一般用的比較少 $ele.mousedown(?handler(eventObject)?) 綁定$ele元素,每次$ele元素觸發點擊操作會執行回調?handler函數 $ele.mousedown(?[eventData?],?handler(eventObject)?) 使用與方法二一致,不過可以接受一個數據參數,這樣的處理是為了解決不同作用域下數據傳遞的問題 $ele.mousemove() 綁定$ele元素,不帶任何參數一般是用來指定觸發一個事件,用的比較少 $ele.mousemove(?handler(eventObject)?) 綁定$ele元素,每次$ele元素觸發點擊操作會執行回調?handler函數 $ele.mousemove(?[eventData?],?handler(eventObject)?) 使用與方法二一致,不過可以接受一個數據參數,這樣的處理是為了解決不同作用域下數據傳遞的問題 $ele.mouseover() 綁定$ele元素,不帶任何參數一般是用來指定觸發一個事件,用的比較少 $ele.mouseover(?handler(eventObject)?) 綁定$ele元素,每次$ele元素觸發點擊操作會執行回調?handler函數 $ele.mouseover(?[eventData?],?handler(eventObject)?) 使用與方法二一致,不過可以接受一個數據參數,這樣的處理是為了解決不同作用域下數據傳遞的問題 mouseenter() 只會在綁定它的元素上被調用,而不會在后代節點上被觸發,不會冒泡 mouseover() 不只是在綁定它的元素上被調用,而且還會向上冒泡在其祖輩元素節點上被調用 hover() $(selector).hover(handlerIn,?handlerOut),當鼠標指針進入元素時觸發執行的事件函數handlerIn,當鼠標指針移出元素時觸發執行的事件函數handlerOut, $ele.focusin() 綁定$ele元素,不帶任何參數一般是用來指定觸發一個事件,一般用的比較少 $ele.focusin(?handler?) 綁定$ele元素,每次$ele元素觸發點擊操作會執行回調?handler函數 $ele.focusin(?[eventData?],?handler?) 使用與方法二一致,不過可以接受一個數據參數,這樣的處理是為了解決不同作用域下數據傳遞的問題 $ele.focusout() 綁定$ele元素,不帶任何參數一般是用來指定觸發一個事件,可能一般用的比較少 $ele.focusout(?handler?) 綁定$ele元素,每次$ele元素觸發點擊操作會執行回調?handler函數 $ele.focusout(?[eventData?],?handler?) 使用與方法二一致,不過可以接受一個數據參數,這樣的處理是為了解決不同作用域下數據傳遞的問題 blur() focus和blur是由內像外進行事件冒泡。focusin和focusout是由外像內進行捕獲,所以當父元素添加了focusin和focusout時子元素也會觸發聚焦或者失焦事件 change() input元素:監聽value值的變化,當有改變時,失去焦點后觸發change事件。對于單選按鈕和復選框,當用戶用鼠標做出選擇時,該事件立即觸發;select元素:對于下拉選擇框,當用戶用鼠標作出選擇時,該事件立即觸發;textarea元素:多行文本輸入框,當有改變時,失去焦點后觸發change事件 .select() select事件只能用于<input>元素與<textarea>元素,觸發元素的select事件: $ele.select(?handler(eventObject)?) 綁定$ele元素,每次$ele元素觸發點擊操作會執行回調?handler函數 $ele.select(?[eventData?],?handler(eventObject)?) 使用與方法二一致,不過可以接受一個數據參數,這樣的處理是為了解決不同作用域下數據傳遞的問題 $ele.submit() 綁定$ele元素,不帶任何參數一般是用來指定觸發一個事件,用的比較少 $ele.submit(?handler(eventObject)?) 綁定$ele元素,每次$ele元素觸發點擊操作會執行回調?handler函數 $ele.submit(?[eventData?],?handler(eventObject)?) 使用與方法二一致,不過可以接受一個數據參數,這樣的處理是為了解決不同作用域下數據傳遞的問題 keydown() 當用戶在一個元素上第一次按下鍵盤上字母鍵的時候,就會觸發它。使用上非常簡單,與基本事件參數處理保持一致 keyup() 當用戶在一個元素上第一次松手鍵盤上的鍵的時候,就會觸發它。使用方法與keydown是一致的只是觸發的條件是方法的 keypress() keydown事件觸發在文字還沒敲進文本框,這時如果在keydown事件中輸出文本框中的文本,得到的是觸發鍵盤事件前的文本,而keyup事件觸發時整個鍵盤事件的操作已經完成,獲得的是觸發鍵盤事件后的文本,keypress事件與keydown和keyup的主要區別:只能捕獲單個字符,不能捕獲組合鍵,無法響應系統功能鍵(如delete,backspace),不區分小鍵盤和主鍵盤的數字字符.KeyPress主要用來接收字母、數字等ANSI字符,而?KeyDown?和?KeyUP?事件過程可以處理任何不被?KeyPress?識別的擊鍵。諸如:功能鍵(F1-F12)、編輯鍵、定位鍵以及任何這些鍵和鍵盤換檔鍵的組合等。 .on(?events?,[?selector?]?,[?data?]?) 多事件綁定 off() 移除事件 $('#elem').trigger('click'); 自定義事件,根據綁定到匹配元素的給定的事件類型執行所有的處理程序和行為 triggerHandler() triggerHandler不會觸發瀏覽器的默認行為,.triggerHandler(?"submit"?)將不會調用表單上的.submit(),.trigger()?會影響所有與?jQuery?對象相匹配的元素,而?.triggerHandler()?僅影響第一個匹配到的元素,使用?.triggerHandler()?觸發的事件,并不會在?DOM?樹中向上冒泡。?如果它們不是由目標元素直接觸發的,那么它就不會進行任何處理,與普通的方法返回?jQuery?對象(這樣就能夠使用鏈式用法)相反,.triggerHandler()?返回最后一個處理的事件的返回值。如果沒有觸發任何事件,會返回?undefined 查看全部
舉報