我在js中创建一个div并设置它的不透明度。这在IE8中没有问题:
var div = document.createElement("div");
div.setAttribute("style", "opacity: 0; visibility: hidden; filter: alpha(opacity=0)");
此元素淡入/淡出,在IE8中也很有效:
if (_SU3.browser == "IE") {
var op = element.filters.alpha.opacity;
var newOpacity = op - (opacityStep * 100);
if (newOpacity <= 0) {
element.filters.alpha.opacity = 0;
element.style.visibility = "hidden";
} else {
element.filters.alpha.opacity = newOpacity;
_SU3.timeouts[url] = setTimeout(function() { _SU3.fadeOut(element, opacityStep); }, 100);
}
} else {
.....
}
但它在IE7中不起作用:从开发人员工具(F12)看起来创建div时样式没有被设置。没有报告错误。所以我试过这个:
div.filters = 'alpha(opacity=0)';
哪些错误“对象不支持此属性或方法”。我也试过设置缩放:1但也无济于事。有什么建议吗?
由于
答案 0 :(得分:4)
我相信JS中IE7的格式更像是:
element.style.filter = "alpha(opacity="+ value +")"
答案 1 :(得分:0)
重要的是要注意, alpha过滤器在IE7中不起作用而不设置宽度。这是一个来之不易的发现。