最近在進行頁面開發(fā),在做頁面特效的時候,需要給一個動態(tài)加載的按鈕賦予一個事件
于是不假思索的 用$(obj).bind();
來綁定事件 。
但是這樣存在一個問題:
bind
確實能綁定事件,但是那是相對于固定的html標簽來說
當頁面內容屬于動態(tài)加載的時候,bind事件就存在一個bug, 只能bind一次,當你第二次觸發(fā)事件的時候就沒用了
例如:
我給<a>
標簽賦予一個click
, <a>標簽包括內容都是從后臺數(shù)據(jù)讀取然后動態(tài)加載的。當我使用bind
來綁定click
事件,這時, 第一次點擊click
能成功觸發(fā)
但是第二次點擊,click
事件無效了.
后面研究發(fā)現(xiàn),jQuery還有個綁定事件的方法:delegate()
; 用法如下:
$(".sentnum-box").delegate(".a-add-ordergoods","click",function(){ //js數(shù)據(jù)代碼});
這樣就能實現(xiàn)對動態(tài)數(shù)據(jù)綁定事件,并永不失效
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對武林網(wǎng)的支持。如果你想了解更多相關內容請查看下面相關鏈接
新聞熱點
疑難解答