.on()方法事件處理程序到當前選定的jQuery對象中的元素。

讓客戶滿意是我們工作的目標,不斷超越客戶的期望值來自于我們對這個行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價值的長期合作伙伴,公司提供的服務(wù)項目有:域名申請、網(wǎng)站空間、營銷軟件、網(wǎng)站建設(shè)、岫巖網(wǎng)站維護、網(wǎng)站推廣。
.on( events [, selector ] [, data ], handler(eventObject) )
events:類型: String
一個或多個空格分隔的事件類型和可選的命名空間,或僅僅是命名空間,比如"click", "keydown.myPlugin", 或者 ".myPlugin"。
selector:類型: String
一個選擇器字符串,用于過濾出被選中的元素中能觸發(fā)事件的后代元素。如果選擇器是 null 或者忽略了該選擇器,那么被選中的元素總是能觸發(fā)事件。
data:類型: Anything
當一個事件被觸發(fā)時,要傳遞給事件處理函數(shù)的event.data。
handler(eventObject):類型: Function()
事件被觸發(fā)時,執(zhí)行的函數(shù)。若該函數(shù)只是要執(zhí)行return false的話,那么該參數(shù)位置可以直接簡寫成 false。
概述
1、#Grid1Table不是#conut的父節(jié)點,p標簽是#logout的父節(jié)點
2、代碼寫法:
$('p').on('click', '#count', function() {
//function code here.
});
解析
1、p包裹a標簽(id = logout),所以logout的父節(jié)點(父標簽)為p(沒有標注id或者class)
pa href='#' id='logout'【退出】/a/p
2、$("#logout").on('click',function() 方法要求參數(shù)為非隨動變量(全局變量),所以#logout為不可行參數(shù),且由于代碼沒有貼全所以這里我先斷定#Grid1Table為非父節(jié)點,而p為#logout父節(jié)點,所以這里可以改成:
$('p').on('click', '#count', function() {
//function code here.
});
拓展內(nèi)容
juqery on()方法詳解
定義和用法
on() 方法在被選元素及子元素上添加一個或多個事件處理程序。
自 jQuery 版本 1.7 起,on() 方法是 bind()、live() 和 delegate() 方法的新的替代品。該方法給 API 帶來很多便利,我們推薦使用該方法,它簡化了 jQuery 代碼庫。
注意:使用 on() 方法添加的事件處理程序適用于當前及未來的元素(比如由腳本創(chuàng)建的新元素)。
提示:如需移除事件處理程序,請使用?off()?方法。
提示:如需添加只運行一次的事件然后移除,請使用?one()?方法。
語法
$(selector).on(event,childSelector,data,function)
參數(shù)
event ? ?????????????必需。規(guī)定要從被選元素移除的一個或多個事件或命名空間。由空格分隔多個事件值,也可以是數(shù)組。必須是有效的事件。 ?
childSelector ? ?可選。規(guī)定只能添加到指定的子元素上的事件處理程序(且不是選擇器本身,比如已廢棄的 delegate() 方法)。 ?
data ? ?????????????? 可選。規(guī)定傳遞到函數(shù)的額外數(shù)據(jù)。 ?
function ? ?????????可選。規(guī)定當事件發(fā)生時運行的函數(shù)。 ?
jquery.on()超級方法
歸納
在jquery的on方法中實現(xiàn)事件委托就更簡單了,on方法可以接受三個參數(shù):
第一個參數(shù)是事件名,可以只綁定一個事件,如on('click'),也可以綁定多個事件,如on('click dbclick mouseover')等
第二個參數(shù)是可選參數(shù),接受一個selector,當事件觸發(fā)元素符合selector時,會調(diào)用事件處理函數(shù)
注:此處用到 li:even 選擇器,后面有注解
第三個參數(shù)是自定義事件處理的回調(diào)函數(shù)。
1.jQuery :even 選擇器
選取每個帶有偶數(shù) index 值的元素(比如 2、4、6)
index 值從 0 開始,所有第一個元素是偶數(shù) (0)
2.jQuery :odd 選擇器
選取每個帶有奇數(shù) index 值的元素(比如 1、3、5)
events:一個或多個用空格分隔的事件類型和可選的命名空間,如"click"或"keydown.myPlugin" 。
selector:一個選擇器字符串用于過濾器的觸發(fā)事件的選擇器元素的后代。如果選擇器為null或省略,當它到達選定的元素,事件總是觸發(fā)。
data:當一個事件被觸發(fā)時要傳遞event.data給事件處理函數(shù)。
fn:該事件被觸發(fā)時執(zhí)行的函數(shù)。 false 值也可以做一個函數(shù)的簡寫,返回false。
當?shù)诙€參數(shù)'selector'為null時,on()和bind()其實在用法上基本上沒有任何區(qū)別了,所以我們可以認為on()只是比bind()多了一個可選的'selector'參數(shù),所以on()可以非常方便的替換掉bind()
在 1.4之前相信大家非常喜歡使用live(),因為它可以把事件綁定到當前以及以后添加的元素上面,當然在1.4之后delegate()也可以做類似的事情了。live()的原理很簡單,它是通過document進行事件委派的,因此我們也可以使用on()通過將事件綁定到document來達到 live()一樣的效果。
1、live()寫法
2、on()寫法
這里的關(guān)鍵就是第二個參數(shù)'selector'在起作用了。它是一個過濾器的作用,只有被選中元素的后代元素才會觸發(fā)事件。
delegate() 是1.4引入的,目的是通過祖先元素來代理委派后代元素的事件綁定問題,某種程度上和live()優(yōu)點相似。只不過live()是通過document元素委派,而delegate則可以是任意的祖先節(jié)點。使用on()實現(xiàn)代理的寫法和delegate()基本一致。
1、delegate()的寫法
2、on()寫法
貌似第一個和第二個參數(shù)的順序顛倒了一下,別的基本一樣。
網(wǎng)站題目:on()jquery的簡單介紹
轉(zhuǎn)載注明:http://chinadenli.net/article13/dseidgs.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)建站、做網(wǎng)站、外貿(mào)建站、網(wǎng)站建設(shè)、域名注冊、網(wǎng)站設(shè)計公司
聲明:本網(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)