以下代码有什么问题?

我需要根据另一个元素是否具有滚动条来检测并设置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%;"});
 }

最佳答案

看看这个:

https://jsfiddle.net/4Lms5uzz/

首先,第二格设置为50 x 50。

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

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

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

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

关于javascript - 动态检测滚动条,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33805052/

10-10 22:03