2010-03-08 57 views
0

是否有可能使用jQuery替換GIF中的所有PNG?我將如何做到這一點?用jQuery替換所有PNG與GIF?

謝謝

+0

你的意思只是改變每個圖像src的擴展名,或者你的意思是在jQuery中將PNG轉換爲GIF?雖然我很想知道爲什麼你想用這種方式,而不是將GIF轉換爲PNG ... – OregonGhost 2010-03-08 10:02:16

+2

如果你只考慮'img'標籤,很容易替換'src'屬性,但是如果你想處理外部CSS樣式表中的圖像事情可能會變得更加艱難。 – 2010-03-08 10:02:34

+0

我剛剛更改字符串後,下面的答案完全回答了我的問題:) – Probocop 2010-03-08 10:12:48

回答

3

你已經有gif圖片了嗎?

如果你這樣做,它會像做這樣的事情一樣容易:

$('img').each(function() { 
    var src = $(this).attr("src").replace(".png", ".gif"); 
    $(this).attr("src", src); 
}); 

這將通過所有的img標籤,並更換有它自己的路徑的路徑,但與GIF擴展名而不是png

讓我知道,如果這可以幫助你。

+1

'''?你至少應該添加點(如果你是一個完美主義者,那麼'$ | \?'並將其轉換爲正則表達式)。 – Boldewyn 2010-03-08 10:10:17

+0

思考正則表達式(我通常喜歡的選擇),但想給他一個簡單的例子,所以他可以理解。 groupngroup雖然是一個有效的東西。已經更新我的代碼以使用a。 +1對你:-) – 2010-03-08 10:13:14

+0

感謝您的回覆,完美工作:) – Probocop 2010-03-08 10:13:17

0

是否所有的PNG引用爲'.png'?如果不是這樣,那麼單獨使用JS是不可能的(參見Mozilla's doc on the Image object:沒有屬性是MIME類型)。

否則請嘗試mplacona的解決方案。

編輯:舉個例子:此網址

http://www.w3.org/Icons/valid-html40 

導致的圖像,但你無法猜測,它是格式。您可以明確要求

http://www.w3.org/Icons/valid-html40.gif 

http://www.w3.org/Icons/valid-html40.png 

但是,沒有擴展,服務器決定,它發送,並在客戶端(JavaScript的,這是)有沒有辦法決定會發生什麼。