【发布时间】:2011-10-02 07:52:50
【问题描述】:
我已经为破解这个难题苦苦挣扎了好几个星期,所以我不确定这是不可能的,还是我缺乏编码能力……或两者兼而有之。我不是程序员,我是 Dojo Toolkit 的新手。
我有一个使用 BorderContainer 布局的网站。我正在尝试创建一种效果,我可以使用按钮打开和关闭将包含控件的下拉类型框。我需要在页面加载时隐藏此下拉菜单,然后在您单击按钮时打开。
我的问题是,当我打开下拉菜单时,它会将其下方的内容窗格推离浏览器窗口的底部。当下拉菜单打开时,我需要下部 ContentPane 保持在浏览器窗口的剩余空间内。此外,我希望下拉菜单位于其下方内容的可滚动容器之外,这就是为什么我将其设置为位于其下方的嵌套 BorderContainer 之外的原因。
我创建了代码的简化版本来展示我的挑战(请参阅下面的链接)。如果加载页面,您可以看到中心 ContentPane 滚动内容。但是,如果您随后单击该按钮,则会在内容上方展开一个下拉 div。然后,当您滚动时,您会注意到您看不到完整的窗格,因为它位于浏览器窗口底部下方的无人区。我假设因为 div 在加载时设置为 display:none,所以页面加载时不考虑它的大小。然后,当您通过按下按钮打开它时,它的大小是相加的,下面的窗格不知道如何调整大小或考虑新元素。
我尝试过使用可见性属性,但是当它仍然关闭时,它会为 div 留下空隙。我已经修改了一些代码来控制显示承诺的高度,但是我的每个下拉框都会有不同的大小,所以我希望将高度设置为“自动”而不是指定的像素大小。
有谁知道我该如何做到这一点,以便下部窗格可以适应空间而无需推开屏幕?
以下是页面示例:
http://equium.com/scaffold.html
(我在尝试在此处插入完整的 HTML 页面作为代码示例时遇到了一些问题,所以如果这是一种更好的处理方式,并且有人可以让我知道嵌入所有代码的最佳方式,我将不胜感激它。)
先谢谢了,我真的很感谢任何人的反馈。
【问题讨论】:
标签: drop-down-menu dojo liquid-layout border-container