是否可以确定元素当前是否溢出其容器?

时间:2011-11-28 14:34:02

标签: javascript jquery

我想检查一个水平滚动条是否应用于这样的div:

if (box.width() < box.get(0).scrollWidth)

即使没有任何滚动条,也始终如此,因为box.get(0).scrollWidth会返回203px,而.width()会返回200

这里有一个例子,请看第一个方框。 $('.box0')

示例:http://www.nikolaydyankov.com/Dev/lionbars/

1 个答案:

答案 0 :(得分:2)

我只是为了确定div是否溢出 - 即可滚动:

$.fn.hasScrollBar = function() {
    var _elm = $(this)[0];
    var _hasScrollBar = false; 
    if ((_elm.clientHeight < _elm.scrollHeight) || (_elm.clientWidth < _elm.scrollWidth)) {
        _hasScrollBar = true;
    }
    return _hasScrollBar;
}

用法:$('#<id>').hasScrollBar();返回true / false

*来自SO原本我认为