Avatar billede mike@work Praktikant
09. maj 2002 - 10:10 Der er 2 kommentarer og
1 løsning

Check om der er scrollbar eller ej !

Jeg skal bruge en funktion, der virker i NS, som kan fortælle mig om der er scrollbar (op og ned) eller ej !
Avatar billede jakoba Nybegynder
09. maj 2002 - 10:31 #1
// den udlagte sides højde:
var sideHojde = document.height;

//browservinduets indre hojde
var rammeHojde = window.innerHeight;

var ca16 = 16; // ræpresenterer bredden på en scrollbar.
// værdien er et gennemsnit, på en højopløst skærm vil tallet
// ofte være større. på en lavopløst lavere.

if ( sideHojde > rammeHojde ) {
    // der er lodret scrollbar
} else
if ( sidehojde+ca16 < rammehojde ) {
    // der er ikke lodret scrollbar
} else {
    // sideHojde ligger imellem rammeHojde og rammeHojde-ca16
    // der er lodret scrollbar hvis der er vandret scrollbar, ellers ikke.
}

Det er ikke umiddelbart nemt :(

mvh JakobA
Avatar billede jakoba Nybegynder
09. maj 2002 - 10:44 #2
Og dog:

function testLodretScroll() { // NB: kun til NS.
    if ( window.pageYOffset != 0 ) {
        // der er scrollet. ergo er det scrollbar.
        return true;
    } else {
        scrollBy( 0, 10 ); // test om der kan scrolles
        if ( window.pageYOffset != 0 ) {
            scrollBo( 0, -10 ); // scroll tilbage
            // vi ku scrolle, der er scrollbar.
            return true;
        } else {
            // der er IKKE scrollbar
            return false;
        }
    }
}; //end testLodretScroll( ) -> boolean

Den skulle være pålidelig. men den giver et lille blink på skærmen hvis der er scrollbar. Test selv om det er acceptabelt.

mvh JakobA
Avatar billede mike@work Praktikant
09. maj 2002 - 11:25 #3
Jeg brugte dit første eksempel:
window.innerWidth-document.width er lig scrollbar - Så det er perfekt :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester