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

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

.delegate()與.on()

.delegate()與.on()

HUH函數 2019-10-19 14:51:37
我在Web應用程序中使用jQuery。我一直在使用,.bind()但是我發現它有點慢,因此在閱讀我所閱讀的文檔.on()和時.delegate()。我了解.delegate()工作原理,但不清楚兩者之間的區別以及.on()在哪種情況下哪個更好。另外我正在使用jQuery 1.6,所以我想知道是否值得通過放置類似于以下內容的條件來為jQuery 1.7準備我的腳本:if(typeof $(selector).on == 'function'){    /* use .on() */}else{    /* use .delegate() */}這是一個好主意(為做準備.on())還是只為尋找麻煩而已?請幫助我清楚地了解這些方法。
查看完整描述

3 回答

?
jeck貓

TA貢獻1909條經驗 獲得超7個贊

該.on()語法是新的語法,1.7版本的用途和它的目的是替代  .bind(),.delegate()和.live()。


此處更多-> http://blog.jquery.com/2011/11/03/jquery-1-7-released/


新的事件API:.on()和.off()


新的.on()和.off()API統一了將事件附加到jQuery中的文檔的所有方式-它們的鍵入時間更短!


  $(elements).on( events [, selector] [, data] , handler );

  $(elements).off( [ events ] [, selector] [, handler] );

提供選擇器時,.on()與.delegate()相似,因為它附加了由選擇器過濾的委托事件處理程序。當選擇器省略或為null時,調用類似于.bind()。有一種模棱兩可的情況:如果data參數是字符串,則必須提供選擇器字符串或null,以便不會將數據誤認為選擇器。傳遞對象以獲取數據,您將不必擔心特殊情況。


所有現有的事件綁定方法(及其對應的取消綁定方法)在1.7中仍然存在,但是對于已知使用1.7或更高版本的新jQuery項目,我們建議您使用.on()。(強調我的)


查看完整回答
反對 回復 2019-10-19
  • 3 回答
  • 0 關注
  • 381 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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