回答
正如启发How to detect overflow in div element?:
<!-- Overflowing -->
<div style="width: 50px;">1,234,567</div>
<!-- Not overflowing -->
<div>1,234,567</div>
的JavaScript(jQuery的无)来检测:
var divs = document.getElementsByTagName('div');
var i, div, overflowing;
for (i=0; i<divs.length; i++) {
div = divs[i];
overflowing = div.offsetWidth < div.scrollWidth;
console.log(overflowing);
}
结果在Firefox中都是'false',正如我想象的那样。由于允许明显溢出,因此不会滚动任何内容。 – 2012-08-14 20:45:45
@amnotiam这是我把边框放进去的原因之一。在Chrome中,第一个div的右边框与“6”相交:http://i.stack.imgur.com/N3MrS.png,相应地,代码打印只有第一个div才是真的。 – 2012-08-14 20:52:47
是的,我明白为什么边界在那里。我使用[背景替代](http://jsfiddle.net/7b3nk/)使它更容易看到。我的观点是Firefox给出了不同的结果。该代码为两个div输出“false”,因为当可见溢出时,“scrollWidth”等于“offsetWidth”。我假设Firefox的结果是正确的,因为当它的溢出可见时,内容不能滚动。 – 2012-08-14 20:56:44
- 1. XSLT - 获取文本()节点
- 2. 获取xml节点文本
- 3. 获取文本XML节点
- 4. 获取文本节点
- 5. 节点获取图像属性(高度,宽度)
- 6. 从点获取DOM文本节点?
- 7. 在MFC中获取文本宽度
- 8. SVG获取文本元素宽度
- 9. 获取节点上的节点文本点击TAdvTreeview delphi
- 10. Kendo UI - 获取treeview节点的文本
- 11. 获取节点的内部文本
- 12. 获取所有的HTML节点文本
- 13. 仅获取当前节点的文本
- 14. 获取当前节点的文本
- 15. 软硬度:获取文本节点的唯一路径从XML
- 16. 在文本节点中获取锚点中的文本
- 17. 阵营本机:“自动”宽度为文本节点
- 18. Android:从字节数组或文件中获取高度/宽度
- 19. jquery获取文档宽度
- 20. 获取文档的宽度和高度
- 21. PHP XML:获取节点及其子节点的文本
- 22. 获取节点的文本内容,而忽略子节点
- 23. 获取文本高度取决于宽度
- 24. 弹力父节点宽度
- 25. 获取文本和元素节点使用xpath的节点的子节点
- 26. 获取Xml文本节点ID
- 27. 无法从XML节点获取文本
- 28. 通过文本获取dom节点
- 29. Zend框架Zend_Dom_Query获取节点文本
- 30. 在DOM中获取文本节点值
我猜它会涉及克隆文本节点,并丢弃将其转换为没有固定宽度的容器,或者如果您可以更改标记,请将文本内容包装在''中,然后使用其宽度。 – 2012-08-14 19:39:14
[如何检测div元素溢出?](http://stackoverflow.com/questions/7138772/how-to-detect-overflow-in-div-element)可能的重复。只需使用'scrollWidth'而不是'scrollHeight' – 2012-08-14 19:39:31
@MattBall这似乎很有用,但我没有在元素上隐藏溢出。我需要补充一点吗,还是会在没有溢出设置的情况下运行? – 2012-08-14 19:52:38