[問題] jquery 執行問題

看板Ajax作者 (僵屍)時間12年前 (2012/05/23 14:29), 編輯推噓4(403)
留言7則, 3人參與, 最新討論串1/1
我的問題是原本的頁面效果是有的 使用完按鈕 .html() 語法後效果跑不出來 html部份 <input type="button" value="變換" id="aaa"> <br> <div id="ccc"> <div class="ddd">12</div> <div class="ddd">23</div> </div> jqery部份 $("#aaa").click(function(){$("#ccc").html("<div class='ddd'>9</div>")}); $("#ccc .ddd").mouseover(function(){ $(this).css('background-color','#666666')}); $("#ccc .ddd").mouseout(function(){ $(this).css('background-color','#555555')}); http://jsfiddle.net/VZz9a/3/ 結構感覺上是差不多 不知道是哪裡出問題 新手上路請多見諒! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 111.242.181.213

05/23 14:31, , 1F
因為在執行mouseover跟mouseout的事件綁定時,新的div
05/23 14:31, 1F

05/23 14:32, , 2F
並不存在!請改用$('#ccc').on('mouseover', '.ddd',...
05/23 14:32, 2F

05/23 14:37, , 3F
05/23 14:37, 3F

05/23 14:48, , 4F
那大概是怎樣的情形要用on哪些情形可以不用
05/23 14:48, 4F

05/23 16:36, , 5F
DOM內容不會變動時直接bind沒問題,會持續更新就on
05/23 16:36, 5F

05/23 17:09, , 6F
其實on是現在1.7版新增的event綁定功能~只是將delegate
05/23 17:09, 6F

05/23 17:09, , 7F
跟live的功能加進來了!理論上click底層也是使用on()喔
05/23 17:09, 7F
文章代碼(AID): #1Fl8Etrk (Ajax)