2013-02-08 47 views
-1

使用stackoverflow的第一個問題!好極了!更改img src和取消綁定菜單選擇jquery

我有一個site我正在開發。它使用圖像作爲菜單選項,並在懸停,我已經改變了jQuery的img src

當你點擊你想要去的菜單,我希望懸停的圖像留在那裏。 我這樣做: $("#one").click(function(){ $(this).attr('src', 'images/hover1.jpg'); $(this).unbind('mouseleave mousehover');

因此,這是成功的,但在另外的菜單中點擊,我不能得到懸停圖像走開,然後它不不再懸停(因爲我unbinded它) - 但在另一個結合它菜單點擊沒有工作。

有什麼建議嗎?

+2

很酷!大拇指爲您的偉大工作! ......哼,這是什麼問題? – 2013-02-08 13:23:08

+0

你的問題是什麼? – Uirri 2013-02-08 13:24:09

+0

對不起,保存問題之前打字:P – user2054422 2013-02-08 13:25:58

回答

0

首先。我認爲它建議在這裏創建一個CSS解決方案。

我檢出了你的JavaScript文件,並在瀏覽器中做了一些修改。最後,我爲你構建一個可能的工作解決方

$(document).ready(function() { 

    var hoverfuncIn = function(){ $(this).attr('src', $(this).attr('src').replace(/(\D)(\.jpg)$/g,'$12$2')); }; 
    var hoverfuncOut = function(){ $(this).attr('src', $(this).attr('src').replace(/2(\.jpg)$/g,'$1')); }; 
    var clickToggle = function(e){ 
    $('.selected').hover(hoverfuncIn,hoverfuncOut).removeClass('selected').mouseout(); 
     $(e.currentTarget).addClass('selected').unbind('mouseleave mousehover'); 
} 

    $('nav img').hover(hoverfuncIn,hoverfuncOut); 

    $("#one").click(function(e){ 
     clickToggle(e); 

... 
+0

DUDE!謝謝!! – user2054422 2013-02-08 14:56:08