Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 检查内容是否溢出_Javascript_Html_Css - Fatal编程技术网

Javascript 检查内容是否溢出

Javascript 检查内容是否溢出,javascript,html,css,Javascript,Html,Css,我需要知道什么时候我的内容溢出了我的div。如果溢出了,我将在一个新窗口中放置一个链接,打开包含所有内容的页面 干杯 DalexL如果您创建这样的结构: <div id="outer" style="overflow: auto"> <div id="inner"> content </div> </div> 内容 当内部的宽度或高度超过外部时,会发生溢出,因为外部假定视口的尺寸,而内部假定显示所有内容所需的最小宽度和高度 您

我需要知道什么时候我的内容溢出了我的div。如果溢出了,我将在一个新窗口中放置一个链接,打开包含所有内容的页面

干杯


DalexL

如果您创建这样的结构:

<div id="outer" style="overflow: auto">
  <div id="inner">
    content
  </div>
</div>

内容
内部
的宽度或高度超过
外部
时,会发生溢出,因为外部假定视口的尺寸,而内部假定显示所有内容所需的最小宽度和高度

您可以将
outer
标记为
visibility:hidden
,使其布局但不显示

如果内容包括
position:fixed
内容,则该部分将不被考虑(在CSS 2上甚至不会被剪裁)。

使用jQuery和:

$('div')。每个(函数(){
var$this=$(this);
if($this.get(0.scrollHeight>$this.height()){
$this.after(“”);
}
});

这是一个jquery插件,用于将文本调整到宽度和高度:

(function($) {
    $.fn.fitText = function(options) {
        options = $.extend({
            width: 0,
            height: 0
        }, options);

        $(this).each(function() {
            var elem = $(this);
            if (options.height > 0) {
                while (elem.height() > options.height) {
                    elem.text(elem.text().substring(0, (elem.text().length - 4)) + 'YourLink');
                }
            }
            if (options.width > 0) {
                while (elem.width() > options.width) {
                    elem.text(elem.text().substring(0, (elem.text().length - 4)) + 'YourLink');
                }
            }
        });
    }
})(jQuery);
无jQuery答案:

if( elements.scrollHeight > element.clientHeight )
  alert('content-overflow')//not to be confused with stackoverflow

这可能会有所帮助:这个问题被标记为Javascript@Gerben,你能扩大一下吗?这个问题显然是关于DIV中的HTML内容。第一个标记与javascript有什么关系?似乎IE6和IE7有时会给出不正确的scrollHeight值。你被警告了。这回答了问题,而不是被接受的答案。对我来说是现成的。很好,从来没有想过检查卷轴的高度。完美而干净的答案
if( elements.scrollHeight > element.clientHeight )
  alert('content-overflow')//not to be confused with stackoverflow