jquery中一些事件函數(shù)使用小結(jié),需要的朋友可以參考下。
創(chuàng)新互聯(lián)建站專注于企業(yè)營銷型網(wǎng)站建設(shè)、網(wǎng)站重做改版、滄州網(wǎng)站定制設(shè)計、自適應(yīng)品牌網(wǎng)站建設(shè)、H5響應(yīng)式網(wǎng)站、商城網(wǎng)站制作、集團公司官網(wǎng)建設(shè)、外貿(mào)營銷網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計等建站業(yè)務(wù),價格優(yōu)惠性價比高,為滄州等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。
1.$(document).ready()
$(document).ready()是jQuery中響應(yīng)JavaScript內(nèi)置的onload事件并執(zhí)行任務(wù)的一種典型方式。它和onload具有類似的效果。但是也有一些差異:
當(dāng)一個文檔完全下載到瀏覽器中時,會觸發(fā)window.onload事件。而使用$(document).ready()注冊的事件處理程序會在html下載完成并解析為Dom樹之后,代碼就可以運行,但并不意味著所有關(guān)聯(lián)文件都已經(jīng)下載完畢。
一個頁面中一般只有一個onload事件處理程序,而且只能一次保存對一個函數(shù)的引用;而$(document).ready()是可以有多個。
一般來說$(document).ready()都要優(yōu)于使用onload事件處理程序。但是如果關(guān)聯(lián)文件還沒有加載完成,則類似圖像高度、寬度的屬性的調(diào)用就會有問題,因此需要在不同的時候選擇合適的方法。
2. 事件捕獲與事件冒泡
事件捕獲: 允許多個元素響應(yīng)事件的一種策略。在事件捕獲的過程中,事件首先會交給最外層的元素,接著再交給更具體的元素。
事件冒泡:另外一種相反的策略叫時間冒泡,當(dāng)事件發(fā)生時,會首先發(fā)送給最具體的元素,在這個元素獲得響應(yīng)機會之后,事件會向上冒泡到更一般的元素。事件冒泡有時候會產(chǎn)生副作用,導(dǎo)致始料不及的行為。
3.阻止事件冒泡的三種方法
指定默認(rèn)操作
通過調(diào)用.preventDefault()方法可以在出發(fā)默認(rèn)操作之前終止事件。
調(diào)用 event.stopPropagation()停止事件傳播
jQuery提供了一個.stopPropagation()方法,使用該方法可以完全阻止事件冒泡。實例代碼如下:
使用stopPropagation()方法阻止事件冒泡
4.常用的事件綁定
jQuery通過使用.bind()方法為元素進行事件綁定,通過使用.unbind()方法為元素進行解除綁定。而且.bind()方法是可以執(zhí)行多次綁定的,如果沒有綁定,在進行解除綁定的時候,這都是安全的。
很多時候某一個事件只需要觸發(fā)一次,隨后就要立即解除綁定,按照傳統(tǒng)的做法,我們可能會先進行事件綁定,然后在事件執(zhí)行完畢后進行解除綁定。jQuery為我們提供了一種簡寫的方法.one來專門解決上述情景下的繁瑣的代碼編寫,示例如下:
5.復(fù)合事件
在進行事件捕獲的時候,常常需要捕獲組合的用戶操作,并且以多個函數(shù)作為響應(yīng),這些事件我們稱為復(fù)合事件。
jQuery提供的.read()方法就是最常用的符合事件方法之一,除此之外,還有進行交互處理的時候用到的兩個函數(shù):
.hover(over,out) 一個模仿懸停事件(鼠標(biāo)移動到一個對象上面及移出這個對象)的方法。這是一個自定義的方法,它為頻繁使用的任務(wù)提供了一種“保持在其中”的狀態(tài)。
.toggle(fn,fn) 每次點擊時切換要調(diào)用的函數(shù)。
分享標(biāo)題:JQuery的一些常用事件
URL標(biāo)題:http://www.chinadenli.net/article42/jdjshc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供搜索引擎優(yōu)化、網(wǎng)站導(dǎo)航、靜態(tài)網(wǎng)站、面包屑導(dǎo)航、建站公司、網(wǎng)站策劃
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)