2012-07-03 94 views
0

我做導航功能,將導航默認圖像更改爲懸停圖像。jquery .hover()導航

默認圖像名稱是「main.png」和懸停圖片是「main_hover.png」

我知道如何從HTML src屬性的jQuery的幫助下提取圖像的名字,但我倒知道如何添加額外的

$(document).ready(function(){ 
    $(".nav").hover(function(){ 
     var default_button = this.src; 
     // here is part where i need help with adding "_hover" to default_image 
     $(this).attr('src', default_button) // i know i need this after image is not hovered 
    }); 
}); 

回答

0
$(document).ready(function(){ 
    $(".nav").hover(function(){ 
     var default_button = this.src.replace(".jpg","_hover.jpg"); 
     $(this).attr('src', default_button) 
    }); 
}); 
+0

我需要添加幾行,但thx求助! .replace()使這個工作成爲可能! :) – aainaarz

5

可能是你不應該通過jQuery做到這一點,爲什麼不使用CSS道:「png格式」

我到目前爲止的代碼文件名「主」和文件擴展名之間的字符串?

.nav { 
background: url(/path/to/main.png) 
} 

.nav:hover { 
    background: url(/path/to/main_hover.png) 
} 
+0

+1絕對這一點。沒有理由使用JavaScript的東西,CSS可以處理得很好。 –

+2

我想建議把懸停和常規狀態放在一個圖像中,如果可能的話,在懸停時使用背景位置。 –

+1

@MatthewGrima Spriting的確是最好的方式來做到這一點 –