看板 Ajax 關於我們 聯絡資訊
※ 引述《knives ()》之銘言: : 標題: [問題] jquery bind事件觸發 : 時間: Wed Nov 16 16:38:07 2011 : : http://jsfiddle.net/h36dQ/ : : 我希望在$('#cl2') 按下去的時候,把原來的$('#cl')的hover事件取消掉 : : 並且在$('#cl')綁定一個新的click事件 : : 可是我這樣寫的話,當我按下c12的時候,它就會立刻觸發$('#c1')的click事件 : : 這並不是我要的結果,我希望只有我手動按下#c1才會觸發click事件 : : 請問那裡要改 : : 謝謝回答 : : -- : ┬─┬─┬─████◣ ┌─┬─┬┬─┬─╭────────────╮┬██ : ┴┬ ◣┴┬ ◢ ◥▌ ├─ ◢██◣┴┬│你偷吃, 鄭先生有看到。│┴ ◢ : ─┴ 洨 ┬┴◢◤□︵□▌+ ├┬:█: ◥▌┴╰────────────╯┬◢◤ : ─┬ ㊣ ┴┬◤ ╰ ◤ ├ ∴ ︰□︵□▌┬┴┬┴┬┴┬─┬┴┬ made by ◤ : ┬┴┬─┬┴ ◢▼ ├┬┴◥ )●◤▅┴┬┴┬┴┬┴┬┴┬┴ orz ◢ : ┴┬┴┬┴┬◢◤ ├┴┬◢ │◣◤┬┴─┴┬┴─┴┬┴┬ ⊙Ptt ◢◤ : : -- : ※ 發信站: 批踢踢實業坊(ptt.cc) : ◆ From: 59.126.209.219 : 推 mrbigmouth:$('#c1').bind('click',function(){ $('#sh').html($(' 11/16 17:08 : → mrbigmouth:#rel2').html());}); 11/16 17:09 : → mrbigmouth:或者在之前用var宣告一個變數接收add2 function的內容 11/16 17:09 : 推 exboyfriend:你有發現你打錯字了嗎 c1 跟 cl 11/16 17:10 : 已改了 : → mrbigmouth:再把該變數傳入bind('click') 11/16 17:10 : → mrbigmouth:你直接在傳入變數的地方放add2() 傳入的會視add2()的re 11/16 17:10 : → mrbigmouth:turn值 而不是該function 11/16 17:10 : → mrbigmouth:所以才會在bind的同時就直接執行add2()了 11/16 17:11 : : 感謝回答,照你的做法,是可以work : 所以我bind 要bind的function 要另外重新抄寫add2()一次 : : 而不能直接呼叫add2(); : : 即使add2(); 裡面的程式碼非常長,也是一樣 : : 完全沒有辦法重覆利用add2()裡面的程式碼囉 : : 謝謝回答 推文有說了 宣告變數存function再傳入即可 var add2=function(){ $('#sh').html($('#rel2').html()); }; $('#cl').unbind('mouseenter').unbind('mouseleave').bind('click',add2); -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.170.60.80