我在js中創建了一個div,並將其設置爲不透明。這部作品在IE8沒有問題:在IE7中設置動態生成元素的不透明度
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但也無濟於事。有什麼建議麼?
感謝
它的工作原理!謝謝。 – 2011-03-22 18:01:18
什麼挑逗,評論和複選標記,但沒有upvote! :) – whoughton 2011-03-22 19:40:03
除非您還設置元素的WIDTH,否則Alpha濾鏡將無法在IE7中使用。 – Billbad 2012-05-04 08:42:44