2011-12-27 89 views
2

所以我有一個看起來像這樣JS版本的jQuery 1.7+

$(".something").live({ 
    mouseover:function(e){ 
    //do stuff 
    }, 
    mouseout:function(e){ 
    //do or undo other stuff 
    } 
}); 

碼但由於這.live方法在jQuery1.7 +過時,我不得不做一點修改的。 首先,它應該看起來像:

$(document).on("mouseover",".something",function(e){ 
    //do stuff here 
}); 

怎麼樣mouseout啄?任何快速的方式來合併這兩個或我會被迫爲他們分別編碼? 謝謝。

+0

請記住,您不會_ HAVE_改變它。他們在這一點上沒有刪除任何東西。 – BNL 2011-12-27 17:11:11

+0

我不得不問這個問題,因爲當我升級到1.7+時出現了問題。但是當然,這是我認爲的原因。無法仔細查看最詳細的細節。但隨着我得到的答案,問題得到解決。感謝這個警告(如果是svn倉庫應該派上用場)。 :) – threepoint1416 2011-12-27 17:35:09

回答

4

您可以將地圖:

$(document).on(
    { 
     mouseover : function(){ ... } 
     , mouseout : function(){ ... } 
    } 
    , '.something' 
); 
+0

我會很感激去除downvote因爲我的答案**是**正確的。 – Neal 2011-12-27 17:08:59

+0

我不是那個推倒你的人。我剛剛評論它是什麼時候__not__正確:) – 2011-12-27 17:10:38

+0

okey dokey^_ ^,只是檢查('+ 1給你btw) – Neal 2011-12-27 17:10:59

1
$(document).on({ 
    mouseover:function(e){ 
    //do stuff 
    }, 
    mouseout:function(e){ 
    //do or undo other stuff 
    } 
}, ".something"); 

基於:

。對(事件地圖[,選擇] [數據])

From the doc

+0

.live在jQuery 1.7中被棄用。 – 2011-12-27 17:07:05

+0

@DarinDimitrov對不起,我意外地輸入了那個。固定^ _^ – Neal 2011-12-27 17:07:37

+0

@cwolves對不起,我不小心鍵入了'生活' – Neal 2011-12-27 17:07:51