8

我有一个脚本,可以为页面上弹出的小 DIV 设置动画。如果我删除 DOCTYPE,它在 IE 和 FF 中都可以正常工作,但是当 DOCTYPE 是 XHTML/Transitional 时,在 Firefox 中,宽度不会改变。

this.container.style.visibility = "visible";
alert("this.container.style.width before = " + this.container.style.width)
this.container.style.width = this.width;
alert("this.container.style.width after = " + this.container.style.width); 
this.container.style.height = this.height;

在 IE 和没有 DOCTYPE 的 FF 中,第一个警报说 0,第二个说 320(这是代码中其他地方设置的宽度)

在 FF 中,使用 DOCTYPE 到 XHTML/Transitional,两个警报都显示为 0。知道这里发生了什么吗?我想我可能需要在过渡中明确设置 DIV 的位置,但我不确定。

4

2 回答 2

21

您是否尝试过设置:

this.container.style.visibility = "visible";
alert("this.container.style.width before = " + this.container.style.width);
this.container.style.width = this.width + 'px';
alert("this.container.style.width after = " + this.container.style.width);
this.container.style.height = this.height + 'px';

//Note the 'px' above

我发现尝试在没有单位的情况下设置数字的宽度/高度可能会导致问题。

于 2008-12-08T15:42:07.603 回答
-1

您可以使用:

document.getElementById("td").style.visibility="hidden";
document.getElementById("td").style.display="none";

而不是宽度属性。

有用!

于 2013-03-21T08:00:30.803 回答