2009-05-22 46 views
2

我的問題是關於jQuery Support系統。是否可以使用jQuery.Support檢查PNG支持?

我想知道是否有可能判斷瀏覽器是否支持使用此方法的半透明背景PNG圖像。

編輯:我對CSS解決方案對特定問題不感興趣。 我想知道jQuery支持檢查系統是否可以檢查這個。我很欣賞這些建議,但我試圖找出關於jQuery的support功能的特定信息。

回答

2

我認爲這是根本不可能的,畢竟,即使IE6顯示透明PNG的,它只是不顯示透明度;所有瀏覽器「支持」PNG,所以你不能檢查。

如果你可以得到一個頁面上特定像素的顏色,你當然可以,但似乎是不可能的。

參見Javascript - get pixel data from image under canvas element?

3

我不使用JS這樣的事情......

我用

.png24 { 
    background-image: url(png24.png); 
} 

/* ie6 */ 
* html .png24 { 
background-image: url(non-png24.png); 

} 

的jQuery已經過時瀏覽器jQuery中1.3檢查。我不知道他們什麼時候會完全刪除它。

我強烈建議將此檢查保留爲CSS和/或conditional stylesheets

在JS中無法檢查支持alpha透明度而無需檢查瀏覽器的能力。

+0

感謝您的建議,但我有興趣檢查是否可以使用我提到的具體jQuery功能... – 2009-05-22 02:24:18

+0

這是可能的,請檢查我發佈的鏈接。 – alex 2009-05-22 02:27:32

0

用JavaScript修復PNG是不好的做法。你最終會得到一個無風格的內容。 CSS和條件註釋將是更好的選擇。

您可以使用alex的方法。

1

我想我明白你TM之後是什麼,因爲我試圖做同樣的事情: 如果支持阿爾法PNG,使用jQuery插入PNG。否則,什麼都不要做。

我能想到的唯一解決方案是使用jQuery插入DIV。然後,在CSS中,您將DIV的background-iamge設置爲您要使用的PNG,然後使用條件註釋爲IE6提供透明gif。

我還沒有嘗試過,但它應該做的伎倆。