亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

請問在jQuery()中,on()方法,求大神解釋!

請問在jQuery()中,on()方法,求大神解釋!

慕哥6287543 2021-11-04 07:07:19
1.7以后,live()方法就被on()方法替代了,我用PHP+jQuery+Ajax做了一個用戶登錄界面,初始的時候沒有<p><a href='#' id='logout'>【退出】</a></p>這個按鈕,是在點擊登錄以后出來的,現在想寫一個$("#logout").on('click',function()這個方法,但是根據定義:$('#Grid1Table').on('click', '#count', function() { //function code here. }); #Grid1Table是#count的父節點以上的節點 問該怎么寫,#logout有父節點嘛?求代碼
查看完整描述

3 回答

?
不負相思意

TA貢獻1777條經驗 獲得超10個贊

概述

1、#Grid1Table不是#conut的父節點,p標簽是#logout的父節點

2、代碼寫法:

$('p').on('click', '#count', function() {
//function code here.
});

解析

1、p包裹a標簽(id = logout),所以logout的父節點(父標簽)為p(沒有標注id或者class)

<p><a href='#' id='logout'>【退出】</a></p>

2、$("#logout").on('click',function() 方法要求參數為非隨動變量(全局變量),所以#logout為不可行參數,且由于代碼沒有貼全所以這里我先斷定#Grid1Table為非父節點,而p為#logout父節點,所以這里可以改成:

$('p').on('click', '#count', function() {
//function code here.
});

拓展內容

juqery on()方法詳解

定義和用法

on() 方法在被選元素及子元素上添加一個或多個事件處理程序。

自 jQuery 版本 1.7 起,on() 方法是 bind()、live() 和 delegate() 方法的新的替代品。該方法給 API 帶來很多便利,我們推薦使用該方法,它簡化了 jQuery 代碼庫。

注意:使用 on() 方法添加的事件處理程序適用于當前及未來的元素(比如由腳本創建的新元素)。

提示:如需移除事件處理程序,請使用 off() 方法。

提示:如需添加只運行一次的事件然后移除,請使用 one() 方法。

語法

$(selector).on(event,childSelector,data,function)

參數

event                必需。規定要從被選元素移除的一個或多個事件或命名空間。由空格分隔多個事件值,也可以是數組。必須是有效的事件。    

childSelector    可選。規定只能添加到指定的子元素上的事件處理程序(且不是選擇器本身,比如已廢棄的 delegate() 方法)。    

data                  可選。規定傳遞到函數的額外數據。    

function            可選。規定當事件發生時運行的函數。    



查看完整回答
反對 回復 2021-11-09
?
慕俠2389804

TA貢獻1719條經驗 獲得超6個贊

$("#logout").on('click',function(){});

也是可以的。不過有個限制,你的這個$("#logout"),不能是后期動態添加的節點。

如果像表格里動態添加的行,要使用事件,就要用下面你說的方法。

$('#Grid1Table').on('click', '#count', function() {
//function code here.
});

#logout有父節點嘛?當然有。

<p><a href='#' id='logout'>【退出】</a></p>

p就是父節點。

$('p').on('click', '#count', function() {
//function code here.
});



查看完整回答
反對 回復 2021-11-09
?
慕森卡

TA貢獻1806條經驗 獲得超8個贊

on的用法:
.on( events [, selector ] [, data ], handler(eventObject) )
描述: 在選定的元素上綁定一個或多個事件處理函數。
events
類型: String
一個或多個空格分隔的事件類型和可選的命名空間,或僅僅是命名空間,比如"click", "keydown.myPlugin", 或者 ".myPlugin"。
selector
類型: String
一個選擇器字符串,用于過濾出被選中的元素中能觸發事件的后代元素。如果選擇器是 null 或者忽略了該選擇器,那么被選中的元素總是能觸發事件。
data
類型: Anything
當一個事件被觸發時,要傳遞給事件處理函數的event.data。
handler(eventObject)
類型: Function()
事件被觸發時,執行的函數。若該函數只是要執行return false的話,那么該參數位置可以直接簡寫成 false。

.on()方法事件處理程序到當前選定的jQuery對象中的元素。在jQuery 1.7中,.on()方法 提供綁定事件處理的所有功能。要刪除的.on()綁定的事件,使用.off()。要綁定一個事件,并且只運行一次,然后刪除自己, 使用.one()


查看完整回答
反對 回復 2021-11-09
  • 3 回答
  • 0 關注
  • 425 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號