【发布时间】:2010-10-28 02:47:59
【问题描述】:
我的问题是关于jQuery Support 系统。
我想知道是否可以使用这种方法判断浏览器是否支持半透明背景PNG图像。
编辑:我对特定问题的 CSS 解决方案不感兴趣。 我想知道jQuery支持检查系统是否可以检查这个。我很欣赏这些建议,但我正在尝试找出有关 jQuery 的 support 功能的特定信息。
【问题讨论】:
标签: jquery css cross-browser png transparency
我的问题是关于jQuery Support 系统。
我想知道是否可以使用这种方法判断浏览器是否支持半透明背景PNG图像。
编辑:我对特定问题的 CSS 解决方案不感兴趣。 我想知道jQuery支持检查系统是否可以检查这个。我很欣赏这些建议,但我正在尝试找出有关 jQuery 的 support 功能的特定信息。
【问题讨论】:
标签: jquery css cross-browser png transparency
我不会用 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?
如果这些都不行,我建议改用条件 cmets,如 MSDN 中所述。
【讨论】:
使用 javascript 修复 png 是不好的做法。你最终会得到一闪而过的无样式内容。 CSS 和条件 cmets 会是更好的选择。
你可以使用alex的方法。
【讨论】:
我认为这根本不可能,毕竟IE6显示透明png的,它只是不显示透明度;所有浏览器都“支持”png,因此您无法检查。
如果您可以获取页面上特定像素的颜色,当然可以,但似乎无法做到。
另见Javascript - get pixel data from image under canvas element?
【讨论】:
我想我理解你在 TM 之后的想法,因为我正在尝试做类似的事情: 如果支持 alpha PNG,请使用 jQuery 插入 PNG。否则,什么也不做。
我能想到的唯一解决方案是使用 jQuery 插入 DIV。然后,在 CSS 中,将 DIV 的 background-iamge 设置为要使用的 PNG,然后使用条件注释来为 IE6 提供透明 gif。
我还没有尝试过,但它应该可以解决问题。
【讨论】: