直接把onchange這個(gè)屬性去掉就好了,removeAttr這個(gè)方法,去了解一下
創(chuàng)新互聯(lián)自2013年起,先為泉港等服務(wù)建站,泉港等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為泉港企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問(wèn)題。
bind();
參數(shù)一:要綁定事件函數(shù)的事件名。
參數(shù)二:要綁定的事件函數(shù)(事件函數(shù)名),如果將來(lái)有可能刪除該綁定的函數(shù),則必須傳函數(shù)名。
bind()方法可以通過(guò)鏈?zhǔn)秸{(diào)用的形式連續(xù)多次調(diào)用,進(jìn)而個(gè)同一標(biāo)簽的同一事件(不同事件)添加不同的事件函數(shù)。
on('事件名',fn);
one('事件名',fn);該方法綁定的事件函數(shù)只能被觸發(fā)一次。
unbind();
參數(shù)一:要解綁事件函數(shù)的事件名(如果只傳這一個(gè)參數(shù),則該事件名中綁定的函數(shù)全部解除)。
參數(shù)二:要解除綁定的事件函數(shù)名。
off();
注意:bind()和unbind()在3.0后已經(jīng)被on()和off()取代。
事件簡(jiǎn)寫本質(zhì)就是簡(jiǎn)化給標(biāo)簽添加事件函數(shù)的操作,標(biāo)準(zhǔn)的添加事件方法:on/bind/one,類似于js的DOM2級(jí)添加事件函數(shù)操作;事件簡(jiǎn)寫類似于DOM0級(jí)的事件綁定操作。
jq事件簡(jiǎn)寫綁定事件函數(shù)的技術(shù)實(shí)現(xiàn)原理:
1、jq給每一個(gè)事件名定義了同名的函數(shù),用戶調(diào)用的事件簡(jiǎn)寫形式,就是在調(diào)用這個(gè)和事件名同名的函數(shù)
2、同名函數(shù)內(nèi)部實(shí)現(xiàn)原理:當(dāng)用戶調(diào)用了該函數(shù),首先獲取該函數(shù)的函數(shù)名(函數(shù)名代表的是事件名),在函數(shù)內(nèi)部通過(guò)on把通過(guò)參數(shù)傳進(jìn)來(lái)的函數(shù)綁定在函數(shù)名對(duì)應(yīng)的事件上。
blur(fn):失去焦點(diǎn)時(shí)觸發(fā)該方法。
focus(fn):當(dāng)鼠標(biāo)或tab按鈕讓元素獲得焦點(diǎn)時(shí),觸發(fā)該函數(shù)。
change(fn):表單元素失去焦點(diǎn)(單選框、復(fù)選框、下拉菜單標(biāo)簽被選中即可觸發(fā),不需等待失去焦點(diǎn)),觸發(fā)該事件。
click(fn):鼠標(biāo)點(diǎn)擊時(shí)觸發(fā)該事件。
dbclick(fn):雙擊元素時(shí)觸發(fā)該事件(注意:把click和dbclick用于同一個(gè)元素會(huì)產(chǎn)生問(wèn)題)。
$(window).scroll(fn):當(dāng)頁(yè)面滾動(dòng)時(shí)觸發(fā)事件。
hover(fn1,fn2):鼠標(biāo)移入觸發(fā)fn1函數(shù),鼠標(biāo)移出觸發(fā)fn2函數(shù)。
復(fù)合事件:toggle().在1.8之前中,復(fù)合了奇、偶次點(diǎn)擊事件,在1.9之后的版本中toggle方法用于jq的動(dòng)畫
toggle()方法在1.8之前的版本中需要兩個(gè)函數(shù)類型作為參數(shù),奇數(shù)次點(diǎn)擊觸發(fā)第一個(gè)函數(shù),偶數(shù)次店家觸發(fā)第二個(gè)函數(shù)。
事件對(duì)象的獲?。涸谑录|發(fā)的函數(shù)中傳遞event參數(shù)。
event.type:事件類型
event.target:觸發(fā)事件的元素
e.currentTarget:事件綁定在哪個(gè)元素上
event.pageX:鼠標(biāo)相對(duì)于文檔的左側(cè)坐標(biāo)
event.pageY:鼠標(biāo)相對(duì)于文檔的頂部坐標(biāo)
e.preventDefault():取消標(biāo)簽事件,如a標(biāo)簽的頁(yè)面跳轉(zhuǎn)。
e.stopPropagation():阻止事件冒泡
1、阻止事件冒泡
stopPropagation()方法
2、阻止默認(rèn)行為
preventDefault()方法
注意:1、return false 在jQuery中是即阻止事件冒泡又阻止默認(rèn)行為
2、jQuery不支持事件捕獲
解密jQuery事件核心:
$("#element").click(function(){}); //綁定點(diǎn)擊事件函數(shù)
$("#element").unbind(); //解綁點(diǎn)擊事件
先簡(jiǎn)單說(shuō)下jQuery綁定和解綁點(diǎn)擊事件的方法
$("#element").click(function(){}); //綁定點(diǎn)擊事件函數(shù)
$("#element").unbind(); ? ? ? ?//解綁點(diǎn)擊事件
$("#element").click(function(){}); ?//綁定其它函數(shù)
即,要對(duì)一個(gè)綁定過(guò)點(diǎn)擊事件的元素綁定其它函數(shù),需先對(duì)其解綁。
上面的代碼看起來(lái)好簡(jiǎn)單,但是實(shí)際應(yīng)用中卻要復(fù)雜的多。舉一個(gè)項(xiàng)目中的實(shí)例吧。
兩個(gè)顯示標(biāo)簽云的DIV,DIV1顯示選中的標(biāo)簽,DIV2顯示可選的標(biāo)簽。DIV2中的任一個(gè)標(biāo)簽被點(diǎn)中后會(huì)從DIV2中消失并添加到DIV1中,再在DIV1點(diǎn)擊它時(shí),它又會(huì)回到DIV2。兩個(gè)DIV中的標(biāo)簽總數(shù)、單個(gè)標(biāo)簽的內(nèi)容保持不變。這個(gè)效果我花了差不多一個(gè)半小時(shí)才搞定,就是因?yàn)閷?duì)jQuery綁定和解綁點(diǎn)擊事件理解的不到位。
我最開始的理解是:當(dāng)一個(gè)標(biāo)簽從DIV1中移除并添加到DIV2中時(shí),其原來(lái)綁定的所有事件都會(huì)消失,我可以從DIV2中析取這個(gè)標(biāo)簽并給它綁定新的點(diǎn)擊事件。結(jié)果是:再點(diǎn)擊它時(shí)它并沒有回到DIV1,而是還是在DIV2中,只是位置被移到了最后。我誤以為這個(gè)標(biāo)簽還屬于DIV1,殊不知不是DIV的歸屬問(wèn)題,而是點(diǎn)擊事件的綁定問(wèn)題。
$(selector).unbind();
或者
$(selector).off();
如果指定事件,把事件名字傳參就可以了
你可以在每次綁定之前先解綁原來(lái)的事件
$("#img").unbind("mouseout").bind("mouseout",function(){....});
文章標(biāo)題:jquery事件解綁,jquery解綁點(diǎn)擊事件
分享URL:http://jinyejixie.com/article34/dsedppe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站建設(shè)、面包屑導(dǎo)航、小程序開發(fā)、服務(wù)器托管、網(wǎng)站設(shè)計(jì)、搜索引擎優(yōu)化
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)