gpt4 book ai didi

javascript - jQuery 如何在 IE8 及以下版本中执行 "fade"?

转载 作者:数据小太阳 更新时间:2023-10-29 05:04:45 27 4
gpt4 key购买 nike

我只是想知道 jQuery 如何在不支持 opacity 的 IE 浏览器中生成淡入淡出效果?动画 opacity 是他们在其他浏览器(如 Firefox 和 Chrome)中淡入淡出的方式。我研究了代码,但老实说,我找不到任何我可以理解的东西!

最佳答案

从 jquery 源代码,他们基本上检测是否支持不透明度,如果不支持,则使用 IEs alpha 过滤器

if ( !jQuery.support.opacity ) {
jQuery.cssHooks.opacity = {
get: function( elem, computed ) {
// IE uses filters for opacity
return ropacity.test( (computed && elem.currentStyle ? elem.currentStyle.filter : elem.style.filter) || "" ) ?
( parseFloat( RegExp.$1 ) / 100 ) + "" :
computed ? "1" : "";
},

set: function( elem, value ) {
var style = elem.style,
currentStyle = elem.currentStyle;

// IE has trouble with opacity if it does not have layout
// Force it by setting the zoom level
style.zoom = 1;

// Set the alpha filter to set the opacity
var opacity = jQuery.isNaN( value ) ?
"" :
"alpha(opacity=" + value * 100 + ")",
filter = currentStyle && currentStyle.filter || style.filter || "";

style.filter = ralpha.test( filter ) ?
filter.replace( ralpha, opacity ) :
filter + " " + opacity;
}
};
}

关于javascript - jQuery 如何在 IE8 及以下版本中执行 "fade"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7001117/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com