【发布时间】:2009-05-28 11:27:09
【问题描述】:
我在 vs 2005 上使用 asp.net ajax 控件工具包 1.0。我正在使用 collapseablePanel 和 AlwaysVisibleControlExtender 控件。当我使用这些时,我注意到它在隐藏之前我的面板会闪烁几秒钟。
为了避免这种情况,我决定将它放在一个 div 中以使其隐藏。 我希望在我使用控件时显示它。
这是我所拥有的:
<div id="menuContent" style="display:none">
<asp:Panel ID="pnlAddNewContent" runat="server" Width="300px">
....//the panel stuff here
</asp>
</div>
标题中的javascript是:
function showdiv() {
if (document.getElementbyId) {
document.getElementbyId('menuContent').style.visibility = 'visible';
}
}
(它适用于 IE 6,因为我不关心兼容性)
和正文 onload=onLoad="showdiv();"
它在加载时正确隐藏,但我无法让它再次显示。有人有解决办法吗?
【问题讨论】:
-
n.b.改变可见性会保留渲染的布局空间,改变显示会改变渲染的布局(这样 display:none 会有效地折叠元素)
-
感谢 annakata,这是有用的建议.. 它为我解决了问题