我的問題是關於jQuery Support系統。是否可以使用jQuery.Support檢查PNG支持?
我想知道是否有可能判斷瀏覽器是否支持使用此方法的半透明背景PNG圖像。
編輯:我對CSS解決方案對特定問題不感興趣。 我想知道jQuery支持檢查系統是否可以檢查這個。我很欣賞這些建議,但我試圖找出關於jQuery的support
功能的特定信息。
我的問題是關於jQuery Support系統。是否可以使用jQuery.Support檢查PNG支持?
我想知道是否有可能判斷瀏覽器是否支持使用此方法的半透明背景PNG圖像。
編輯:我對CSS解決方案對特定問題不感興趣。 我想知道jQuery支持檢查系統是否可以檢查這個。我很欣賞這些建議,但我試圖找出關於jQuery的support
功能的特定信息。
我認爲這是根本不可能的,畢竟,即使IE6顯示透明PNG的,它只是不顯示透明度;所有瀏覽器「支持」PNG,所以你不能檢查。
如果你可以得到一個頁面上特定像素的顏色,你當然可以,但似乎是不可能的。
參見Javascript - get pixel data from image under canvas element?
我不使用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透明度而無需檢查瀏覽器的能力。
也許你可以使用jQuery pngFix或jQuery ifixpng?
如果這兩者都不會,我建議您查看條件註釋,如MSDN所述。
用JavaScript修復PNG是不好的做法。你最終會得到一個無風格的內容。 CSS和條件註釋將是更好的選擇。
您可以使用alex的方法。
我想我明白你TM之後是什麼,因爲我試圖做同樣的事情: 如果支持阿爾法PNG,使用jQuery插入PNG。否則,什麼都不要做。
我能想到的唯一解決方案是使用jQuery插入DIV。然後,在CSS中,您將DIV的background-iamge設置爲您要使用的PNG,然後使用條件註釋爲IE6提供透明gif。
我還沒有嘗試過,但它應該做的伎倆。
感謝您的建議,但我有興趣檢查是否可以使用我提到的具體jQuery功能... – 2009-05-22 02:24:18
這是可能的,請檢查我發佈的鏈接。 – alex 2009-05-22 02:27:32