日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

jquery on()事件

發布時間:2024/4/17 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 jquery on()事件 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

最近在寫一個后臺管理項目的時候因為on事件踩了坑,所以再項目結束之后,想總結性的談談jquery的on事件。

on事件是在jQuery1.1之后bind()、live()和delegate()方法新的替代品。

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

語法

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

實例

$(document).ready(function(){$("#div1").on("click",function(){$(this).css("background-color","pink");});}

看起來這個方法是很好用的,對于自己在js里動態添加的元素用這個方法幾乎都是沒什么問題的。但我們有時寫網頁,會運用到別人已經寫好的一些插件,插件的代碼可能很繁瑣,所以我們要在它上面動手腳一般會想到通過獲取它的id或者class去做一些事情。這個時候由于你不了解它代碼內部的結構,你向上面那樣去運用on事件就不生效了。

這個問題困擾了我一天,想了很多辦法,把所有的事件綁定方法都使用了一遍,甚至試圖去解讀插件的源代碼。結果第二天突然想到去查一查on事件不執行的原因,終于找到了答案。

原因

on前面的元素也必須在頁面加載的時候就存在于dom里面。動態的元素或者樣式等,可以放在on的第二個參數里面。

解決方法
$( document ).on( "click", ".del_opter", function() {console.dir(stat);});

網上沒有對為什么這樣寫給出解釋,但是我個人覺得應該是先去加載一遍dom在使用on事件的意思吧。

最后啰嗦談兩句感想:

做這個項目中遇到的幾個問題,有時幾天都沒有得到解決,有時真的感到絕望了,晚上睡不著,夢里都是怎樣都清不掉的bug。但第二天醒來,突然思維一現,卻又看見了一現生機。或許這就是日思夜想的效果吧,你的努力是看得見效果的,不要放棄,下一秒你就可以享受到那豁然開朗的喜悅了。

轉載于:https://www.cnblogs.com/huyuzhu/p/7259293.html

總結

以上是生活随笔為你收集整理的jquery on()事件的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。