Feststellen, ob Scroling aktiv ist

Pilow

Neues Mitglied
Auf meiner Homepage kann man Buttons anklicken, wenn man ans Ende oder an den Beginn der Seite springen will. Das ist natürlich nur sinnvoll, wenn die Seite so lang ist, dass Scroling aktiv ist und also ein Scrolbalken angezeigt wird. Wie kann ich feststellen, ob so ein Balken angezeigt wird?
 

Oneixee5

Top Contributor
Auf meiner Homepage kann man Buttons anklicken, wenn man ans Ende oder an den Beginn der Seite springen will. Das ist natürlich nur sinnvoll, wenn die Seite so lang ist, dass Scroling aktiv ist und also ein Scrolbalken angezeigt wird. Wie kann ich feststellen, ob so ein Balken angezeigt wird?
Element.scrollHeight und Element.clientHeight

CSS:
div {
    border: 1px solid red;
}

HTML:
<div id="div1" style="width: 100px; height:100px; overflow:auto;" class="...">
  * content 1
    <br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
</div>

<div id="div2" style="width: 100px; height:100px; overflow:auto;" class="...">
  * content 2
</div>
Javascript:
function scrollbarVisible(element) {
  return element.scrollHeight > element.clientHeight;
}

alert('Scrollbar-1:  ' + scrollbarVisible(document.getElementById('div1')));
alert('Scrollbar-2: ' + scrollbarVisible(document.getElementById('div2')));
 

Neue Themen


Oben