jQuery.event兼容各瀏覽器的event詳細(xì)解析
介紹之前先介紹jQuery的一個方法 jQuery.event.fix(event || window.event); 此方法個瀏覽器的event對象轉(zhuǎn)換為 jQuery.event; 如果您的事件是通過jQuery方法綁定的,就不需要進(jìn)行轉(zhuǎn)換了!
jQuery在遵循W3C規(guī)范的情況下,對事件的常用屬性進(jìn)行了封裝,使得事件處理在各大瀏覽器下都可以正常的運行而不需要進(jìn)行瀏覽器類型判斷。
1.event.type屬性
該方法作用是可以獲取到時間的類型
$("a").click(function(event){
alert(event.type); //獲取時間類型
return false; //阻止鏈接跳轉(zhuǎn)
})
以上代碼運行后會返回:“click”。
2.event.preventDefault()方法
該方法的作用是阻止默認(rèn)的事件行為。JavaScript中符合W3C規(guī)范的preventDefault()方法在IE瀏覽器中無效。jQuery對其進(jìn)行了封裝,使之能兼容各種瀏覽器。
3.event.stopPropagation()方法
該方法是阻止事件的冒泡。JavaScript中符合W3C規(guī)范的stopPropagation()方法在IE瀏覽器中無效。jQuery對其進(jìn)行封裝,使之能兼容各種瀏覽器。
4.event.target屬性
event.target屬性的作用是獲取到出發(fā)事件的元素。jQuery對其封裝后,避免了W3C、IE和safari瀏覽器不同標(biāo)準(zhǔn)的差異。
$("a[href=http://www.dbjr.com.cn]").click(function(event){
alert(event.target.href); //獲取觸發(fā)事件的<a>元素的href屬性值
alert(event.target.tagName); //獲取觸發(fā)事件的元素的標(biāo)簽名稱
return false; //阻止鏈接跳轉(zhuǎn)})
5.event.relatedTarget屬性
在標(biāo)準(zhǔn)DOM中,mouseover和mouseout所發(fā)生的元素可以通過event.target()方法來訪問,相關(guān)元素是通過event.relatedTarget屬性來訪問的。event.relatedTarget屬性在mouseover中相當(dāng)于IE瀏覽器的event.fromElement屬性,在mouseout中相當(dāng)于IE瀏覽器的event.toElement,jQuery對其進(jìn)行了封裝,使之能兼容各種瀏覽器。
6.event.pageX/event.pageY屬性
該方法的作用是獲取到光標(biāo)相對頁面的x坐標(biāo)和y坐標(biāo)。如果沒有使用jQuery時,那么IE瀏覽器中是用event/event.y方法,而在Firefox瀏覽器中用event.pageX/event.pageY方法。如果頁上有滾動條,則還要加上滾動條的寬度和高度。在IE瀏覽器中還應(yīng)該減去默認(rèn)的2px的邊框。
$(function() {
$("a").click(function(event) {
alert("Current mouse position:" + event.pageX + "," + event.pageY);
//獲取鼠標(biāo)當(dāng)前相對于頁面的坐標(biāo)
return false; //阻止鏈接跳轉(zhuǎn)
});
})
7.event.which屬性
該方法的作用是在鼠標(biāo)單擊事件中獲取到鼠標(biāo)的左、中、右鍵;在鍵盤事件中獲取鍵盤的按鈕。
$(function() {
$("body").mousedown(function(e) {
alert(e.which); //1 = 鼠標(biāo)左鍵;2 = 鼠標(biāo)中鍵;3 = 鼠標(biāo)右鍵。
})
})
以上代碼加載到頁面中,用鼠標(biāo)單擊頁面時,單擊左、中、右鍵分別返回1、2、3.
8.event.metaKey屬性
針對不同瀏覽器對鍵盤中的<ctrl>按鍵解釋不同,jQuery也進(jìn)行了封裝,并規(guī)定event.metaKey()方法為鍵盤事件中獲取<ctrl>按鍵。
9.event.originalEvent屬性。
該方法的作用是指向原始的事件對象。
- Jquery中Event對象屬性小結(jié)
- jquery事件preventDefault()方法用法實例
- jquery中event對象屬性與方法小結(jié)
- JQuery事件e參數(shù)的方法preventDefault()取消默認(rèn)行為
- jquery 關(guān)于event.target使用的幾點說明介紹
- Jquery阻止事件冒泡 event.stopPropagation
- jquery利用event.which方法獲取鍵盤輸入值的代碼
- jquery下為Event handler傳遞動態(tài)參數(shù)的代碼
- jQuery源碼分析之Event事件分析
- Jquery替換已存在于element上的event的方法
- 利用jQuery的$.event.fix函數(shù)統(tǒng)一瀏覽器event事件處理
- jQuery.event.trigger()的簡單解釋
相關(guān)文章
JSONP 跨域訪問代理API-yahooapis實現(xiàn)代碼
介紹一個JSONP 跨域訪問代理API-yahooapis,需要的朋友可以參考下2012-12-12jQuery實現(xiàn) RadioButton做必選校驗功能
這篇文章主要介紹了jQuery實現(xiàn) RadioButton做必選校驗功能的相關(guān)資料,需要的朋友可以參考下2017-06-06jQuery Ajax Post 回調(diào)函數(shù)不執(zhí)行問題的解決方法
本文是小編給大家?guī)淼膉Query Ajax Post 回調(diào)函數(shù)不執(zhí)行的原因及解決方法,在本文最下面還給大家附加jquery Ajax 不執(zhí)行回調(diào)函數(shù)success的原因,這兩個問題都非常多見,感興趣的朋友一起看下吧2016-08-08jQuery中使用Ajax獲取JSON格式數(shù)據(jù)示例代碼
有時候我們需要讀取JSON格式的數(shù)據(jù)文件,在jQuery中可以使用Ajax或者 $.getJSON()方法實現(xiàn),下面有個不錯的示例,需要的朋友可以參考下2013-11-11jQuery position() 函數(shù)詳解以及jQuery中position函數(shù)的應(yīng)用
position()函數(shù)用于返回當(dāng)前匹配元素相對于其被定位的祖輩元素的偏移,也就是相對于被定位的祖輩元素的坐標(biāo)。該函數(shù)只對可見元素有效,通過本文給大家介紹jQuery position() 函數(shù)詳解以及jQuery中position函數(shù)的應(yīng)用,感興趣的朋友一起學(xué)習(xí)吧2015-12-12