jQuery 事件对象的属性
jQuery 在遵循 W3C 規(guī)范的情況下,對事件對象的常用屬性進行了封裝,使得事件處理在各大瀏覽器下都可以正常運行而不需要進行瀏覽器類型判斷。
(1) event.type
該方法的作用是可以獲取到事件的類型。
<script> $(function(){$("a").click(function(event) {alert(event.type);//獲取事件類型return false;//阻止鏈接跳轉(zhuǎn) }); }) </script><body> <a href='http://google.com'>click me .</a> </body>以上代碼運行后會輸出:"click”
(2) event.preventDefault() 方法
該方法的作用是阻止默認(rèn)的事件行為。JavaScript 中符合 W3C 規(guī)范的 preventDefault() 方法在 IE 瀏覽器中卻無效。 jQuery 對其進行了封裝,使之能兼容各種瀏覽器。
(3 ) event.stopPropagation()方法
該方法的作用是阻止事件的冒泡。 JavaScript 中符合 W3C 規(guī)范的 stopPropagation() 方法在 IE 瀏覽器中卻無效。 jQuery 對其進行了封裝,使之能兼容各種瀏覽器。
(4) event.target
event.target 的作用是獲取到觸發(fā)事件的元素。 jQuery 對其封裝后,避免了各個瀏覽器不同標(biāo)準(zhǔn)的差異。
<script> $(function(){$("a[href='http://google.com']").click(function(event) {var tg = event.target; //獲取事件對象 alert(tg.href) ;return false;//阻止鏈接跳轉(zhuǎn) }); }) </script><body> <a href='http://google.com'>click me .</a> </body>以上代碼運行后會輸出:"http://google.com"
(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 對其進行了封裝,使之能兼容各種瀏覽器。
(6) event.pageX 和 event.pageY
該方法的作用是獲取到光標(biāo)相對于頁面的x坐標(biāo)和y坐標(biāo)。如果沒有使用 jQuery 時,那么IE瀏覽器中是用 event.x / event.y,而在 Firefox 瀏覽器中是用 event.pageX / event.pageY 。如果頁面上有滾動條,則還要加上滾動條的寬度或高度。
<script> $(function(){$("a").click(function(event) {alert("Current mouse position: " + event.pageX + ", " + event.pageY );//獲取鼠標(biāo)當(dāng)前相對于頁面的坐標(biāo)return false;//阻止鏈接跳轉(zhuǎn) }); }) </script>(7) event.which
該方法的作用是在鼠標(biāo)單擊事件中獲取到鼠標(biāo)的左、中、右鍵;在鍵盤事件中獲取鍵盤的按鍵。比如,獲取鼠標(biāo)的左、中、右鍵:
$(function(){$("a").mousedown(function(e){alert(e.which) // 1 = 鼠標(biāo)左鍵 ; 2 = 鼠標(biāo)中鍵; 3 = 鼠標(biāo)右鍵return false;//阻止鏈接跳轉(zhuǎn) }) })以上代碼加載到頁面后,用鼠標(biāo)單擊頁面時,單擊左、中、右鍵分別返回1、2、3。
比如,獲取鍵盤的按鍵:
$(function(){$("input").keyup(function(e){alert(e.which);}) })(8) event.metaKey
針對不同瀏覽器對鍵盤中的<ctrl>按鍵解釋不同, jQuery 也進行了封裝,并規(guī)定 event.metaKey 為鍵盤事件中獲取<ctrl>按鍵。
<script> $(function(){$("input").keyup(function(e){alert( e.metaKey +" "+e.ctrlKey );$(this).blur();}) }) </script><body> <input type="text" value="按住ctrl鍵,然后再點其他任何鍵" style="width:200px"/> </body>注意 : 更多的 event 的屬性和方法可以訪問:http://api.jquery.com/category/events/event-object/
?
轉(zhuǎn)載于:https://www.cnblogs.com/jwen1994/p/10568037.html
總結(jié)
以上是生活随笔為你收集整理的jQuery 事件对象的属性的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: JAVA WEB开发环境与搭建
- 下一篇: 滴滴获10倍超额认购 提前完成筹资目