【发布时间】:2010-10-06 05:50:19
【问题描述】:
我有一个 DIV,里面有很多子 DIV。我想要的类似于Firefox的标签,当您打开的标签太多或主DIV宽度太小时,界面会检测溢出并在右侧显示一个按钮以列出所有隐藏的标签。问题是我什至不知道从哪里开始寻求帮助。
【问题讨论】:
标签: javascript html overflow detection
我有一个 DIV,里面有很多子 DIV。我想要的类似于Firefox的标签,当您打开的标签太多或主DIV宽度太小时,界面会检测溢出并在右侧显示一个按钮以列出所有隐藏的标签。问题是我什至不知道从哪里开始寻求帮助。
【问题讨论】:
标签: javascript html overflow detection
您的主 DIV 是否设置为 overflow:hidden?
如果是这样,您可以通过增加 scrollLeft 属性来测试它是否需要溢出,然后查询它是否已更改:
function containsTooMuch(el) {
var original = el.scrollLeft++;
return el.scrollLeft-- > original;
}
【讨论】:
谷歌搜索发现:
http://knitinr.blogspot.com/2008/08/javascript-warn-if-overflow.html
看起来不错且独立于框架。
但也许有人想出了一个使用更少代码的解决方案。
哦,猜猜哪个流行的编码社区网站搞砸了谷歌搜索结果
javascript detect overflow
:)
【讨论】:
我的方法是从如何添加新的 DIV 开始工作。无论是什么事件导致这种情况发生,我都会在文档中添加一个处理程序,该处理程序运行一个脚本,该脚本检查各种 DIV 的大小以确保它们满足您的要求。如果它们太大(或太多),那么您隐藏其中的一些并添加带有显示逻辑的按钮。
【讨论】: