动态检测滚动条

时间:2015-11-19 13:17:43

标签: javascript jquery html css scrollbar

以下代码有什么问题?

我需要根据另一个元素是否有滚动条来检测和设置1个元素的宽度。这似乎不起作用:

console.log("print Scroll..here...");
if(($(".printer-details-container").offsetHeight < $(".printer-details-container").scrollHeight) || ($(".printer-details-container").offsetWidth < $(".printer-details-container").scrollWidth)){
      // your element have overflow
      console.log("print Scroll..here...");
      $(".printer-header").css({"width":"96.9999%;"});
 }
 else{
      //your element don't have overflow
      console.log("no print Scroll..here...");
      $(".printer-header").css({"width":"100%;"});
      //console.log($(".printer-header").print-header.css({"width":"100%;"});
 }

1 个答案:

答案 0 :(得分:1)

看看这个:

https://jsfiddle.net/4Lms5uzz/

首先,第二个div设置为50乘50。

如果#rules div中存在滚动,则第二个的尺寸将会改变。

基本上该方法是divWithScrollbar.clientHeight < divWithScrollbar.scrollHeight

scrollHeight获取div内容的高度,clientHeight获取div的大小。

如果scrollHeight小于scrollHeight,则滚动条可见。