您好,登錄后才能下訂單哦!
如何在JQuery中使用對象屬性?針對這個(gè)問題,這篇文章詳細(xì)介紹了相對應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問題的小伙伴找到更簡單易行的方法。
JQuery中的常用事件
.click() | 鼠標(biāo)單擊觸發(fā)事件,參數(shù)可選(data,function) |
.dblclick() | 雙擊觸發(fā),同上 |
.mousedown()/up() | 鼠標(biāo)按下/彈起觸發(fā)事件 |
.mousemove() | 鼠標(biāo)移動(dòng)事件 |
.mouseover()/out() | 鼠標(biāo)移入/移出觸發(fā)事件 |
.mouseenter()/leave() | 鼠標(biāo)進(jìn)入/離開觸發(fā)事件* |
.hover(func1,func2) | 鼠標(biāo)移入調(diào)用func1函數(shù),移出調(diào)用func2函數(shù) |
.focusin() | 鼠標(biāo)聚焦到該元素時(shí)觸發(fā)事件 |
.focusout() | 鼠標(biāo)失去焦點(diǎn)時(shí)觸發(fā)事件 |
. focus()/.blur() | 鼠標(biāo)聚焦/失去焦點(diǎn)觸發(fā)事件(不支持冒泡) |
.change() | 表單元素發(fā)生改變時(shí)觸發(fā)事件 |
.select() | 文本元素被選中時(shí)觸發(fā)事件 |
.submit() | 表單提交動(dòng)作觸發(fā)* |
.keydown()/up() | 鍵盤按鍵按下/彈起觸發(fā) |
.on() | 多事件的綁定 |
.off() | 移除事件的綁定 |
.trigger(“event”) | 觸發(fā)事件event調(diào)用 |
.triggerHandler() | 觸發(fā)事件,不會(huì)冒泡,不會(huì)觸發(fā)默認(rèn)事件 |
注:
1、以上事件函數(shù)有三種用法:
//直接綁定事件到元素上 $('.target1').keydown(function(e) { $("em:first").text(e.target.value) //通過對象e獲取輸入的值 });
//傳遞參數(shù)調(diào)用函數(shù)處理 $("#test").click(11111,function(e) { //this指向 div元素 //e.data => 11111 通過e傳遞參數(shù)數(shù)據(jù) });
//手動(dòng)觸發(fā)已綁定的點(diǎn)擊事件 $elem.click()
2、mouseover與mouseenter區(qū)別:不論鼠標(biāo)指針穿過被選元素或其子元素,都會(huì)觸發(fā) mouseover 事件,稱作支持冒泡處理,冒泡處理指子元素與父元素共同定義的事件,在觸發(fā)子元素時(shí),或者沒有定義子元素,事件就會(huì)向父級(jí)傳播,引發(fā)父級(jí)事件觸發(fā)。只有在鼠標(biāo)指針穿過被選元素時(shí),才會(huì)觸發(fā) mouseenter 事件。
3、form元素是有默認(rèn)提交表單的行為,如果通過submit處理的話,需要禁止瀏覽器的這個(gè)默認(rèn)行為。傳統(tǒng)的方式是調(diào)用事件對象 e.preventDefault() 來處理, jQuery中可以直接在函數(shù)中最后結(jié)尾return false即可。
//回車鍵或者點(diǎn)擊提交表單后禁止瀏覽器默認(rèn)跳轉(zhuǎn): $('#target2').submit(function() { alert('捕獲提交表達(dá)動(dòng)作,阻止頁面跳轉(zhuǎn)') return false; });
4、on()使用
基本用法:.on( events ,[ selector ] ,[ data ] )
最常見的給元素綁定一個(gè)點(diǎn)擊事件,對比一下快捷方式與on方式的不同
$("#elem").click(function(){}) //快捷方式 $("#elem").on('click',function(){}) //on方式
//多個(gè)事件綁定同一個(gè)函數(shù),通過空格分離,傳遞不同的事件名,可以同時(shí)綁定多個(gè)事件 $("#elem").on("mouseover mouseout",function(){ });
//多個(gè)事件綁定不同函數(shù) $("#elem").on({ mouseover:function(){}, mouseout:function(){} });
//將數(shù)據(jù)傳遞到處理程序 $( "button" ).on( "click", { //第二個(gè)參數(shù)傳遞數(shù)據(jù)給函數(shù)調(diào)用 name: "Mr.Tory" }, greet ); function greet( event ) { alert( "Hello " + event.data.name ); //輸出Hello Mr.Tory }
事件對象的屬性與方法
.type | 事件類型.如果使用一個(gè)事件處理函數(shù)來處理多個(gè)事件, 可以使用此屬性獲得事件類型,比如click |
.data | 事件調(diào)用時(shí)傳入額外參數(shù) |
.target | 觸發(fā)該事件的 DOM 元素 |
.which | 指示按了哪個(gè)鍵或按鈕 |
.timeStamp | 該屬性返回從 1970 年 1 月 1 日到事件發(fā)生時(shí)的毫秒數(shù) |
.pageX/Y | 相對于文檔左/上邊緣的鼠標(biāo)位置 |
.result | 上一個(gè)相同事件處理器函數(shù)返回的值 |
.preventDefalut() | 阻止事件的默認(rèn)動(dòng)作 |
.stopPropagation() | 取消事件冒泡 |
$("#content").click(function(event) { $("#msg").html("<p>外層div元素被單擊</p>"); event.stopPropagation(); //通過event方法阻止事件冒泡 });
關(guān)于如何在JQuery中使用對象屬性問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注億速云行業(yè)資訊頻道了解更多相關(guān)知識(shí)。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。