jquery不透明度跨浏览器?

Posted

技术标签:

【中文标题】jquery不透明度跨浏览器?【英文标题】:jquery opacity cross browser? 【发布时间】:2011-06-07 06:18:21 【问题描述】:

jQuery('#selector').css('opacity':50);是跨浏览器吗?

我问的唯一原因是因为下面我们通常在 css 上使用的行

-moz-opacity:.50; filter:alpha(opacity=50); opacity:.50;

【问题讨论】:

【参考方案1】:

这可能更好:

$(element).fadeTo(0, 0.5);

【讨论】:

css(opacity:50) 并不总是有效,在 chrome 上它不会,但与 fadeTo 一起使用很好 :) 这几乎不一样,因为这不仅以跨浏览器的方式设置不透明度,而且还设置了动画。在 CSS3 时代,由于 CSS 过渡,这可能不是我们所希望的。 @RobertKoritnik,在提出此类声明之前检查 API;这里的第一个参数意味着有 no 动画。另外,我不确定与转换有什么联系。没有人要求。此外,这显然是一年多前发布的,即便如此,考虑到某些市场不支持 CSS3,我不确定 CSS3 的时代。 第一个参数是 0 是的,但是在声称这意味着没有动画之前,你应该检查 jQuery 代码,看看如果 speed 参数设置为 0 会执行多少代码。但你是对的这个问题的年龄和不相关的 CSS3 转换。我收回了。 @RobertKoritnik,你是对的,有开销,但这并不意味着有动画;它们是两个不同的东西。无论如何,就 CPU 时间而言,该代码量可以忽略不计。【参考方案2】:

是的,它设置 css 不透明度或 IE 的不透明度过滤器。

【讨论】:

【参考方案3】:

因为 jQuery 在设计时考虑了跨浏览器兼容性,只要浏览器支持 CSS opacity 标签,那么,是的,您的 jQuery 代码是跨浏览器的。 (你试过了吗?你可以去jsfiddle.net看看有没有。)

如需更多信息,请联系W3Schools page on opacity。使用各种浏览器前往那里,看看它是否有效。 (看起来它适用于所有三种主要浏览器。)

【讨论】:

嗨,我知道这是一篇旧帖子,但我想补充一下,请不要信任或引用 W3Schools。见:w3fools.com 100% 正确,@daiscog。我年轻而愚蠢。 (我现在屏蔽了 W3School 的结果。)事实上,正是这样纠正了我的错误方式。我现在更聪明了。 ;)

以上是关于jquery不透明度跨浏览器?的主要内容,如果未能解决你的问题,请参考以下文章

css 跨浏览器不透明度

css 跨浏览器不透明度

css 跨浏览器不透明度

css 跨浏览器不透明度

CSS 跨浏览器不透明度

CSS 跨浏览器不透明度