Avatar billede jahamnej Nybegynder
25. juni 2004 - 13:15 Der er 5 kommentarer og
1 løsning

Loop et scroll script

Hey,

Jeg søger lige en hurtig løsning. Jeg bruger det nedenstående js script til at scrolle med. Er det muligt at få det til, at starte forfra når man når bunden. Altså så det hele tiden looper....

//    browsercheck object
function lib_bwcheck(){ //Browsercheck (needed)
    this.ver=navigator.appVersion;
    this.agent=navigator.userAgent;
    this.dom=document.getElementById?1:0;
    this.opera5=this.agent.indexOf("Opera 5")>-1;
    this.ie5=(this.ver.indexOf("MSIE 5")>-1 && this.dom && !this.opera5)?1:0;
    this.ie6=(this.ver.indexOf("MSIE 6")>-1 && this.dom && !this.opera5)?1:0;
    this.ie4=(document.all && !this.dom && !this.opera5)?1:0;
    this.ie=this.ie4||this.ie5||this.ie6;
    this.mac=this.agent.indexOf("Mac")>-1;
    this.ns6=(this.dom && parseInt(this.ver) >= 5) ?1:0;
    this.ns4=(document.layers && !this.dom)?1:0;
    this.bw=(this.ie6 || this.ie5 || this.ie4 || this.ns4 || this.ns6 || this.opera5)
    return this;
}
var bw=new lib_bwcheck();

//    If you want it to move faster you can set this lower, it's the timeout:
var speed = 20;

//    Sets variables to keep track of what's happening
var loop, timer;

//    Element Object
function makeObj(obj,nest){
    nest=(!nest) ? "":'document.'+nest+'.';
    this.el=bw.dom?document.getElementById(obj):bw.ie4?document.all[obj]:bw.ns4?eval(nest+'document.'+obj):0;
      this.css=bw.dom?document.getElementById(obj).style:bw.ie4?document.all[obj].style:bw.ns4?eval(nest+'document.'+obj):0;
    this.scrollHeight=bw.ns4?this.css.document.height:this.el.offsetHeight;
    this.clipHeight=bw.ns4?this.css.clip.height:this.el.offsetHeight;
    this.up=goUp;this.down=goDown;
    this.moveIt=moveIt; this.x=0; this.y=0;
    this.obj = obj + "Object";
    eval(this.obj + "=this");
    return this
}

// A unit of measure that will be added when setting the position of a layer.
var px = bw.ns4||window.opera?"":"px";

function moveIt(x,y){
    this.x = x
    this.y = y
    this.css.left = this.y+px
    this.css.top = this.x+px
}

//Makes the object go up
function goDown(move){
    if (this.y>-this.scrollHeight+oCont.clipHeight){
        this.moveIt(0,this.y-move)
            if (loop) setTimeout(this.obj+".down("+move+")",speed)
    }
}
//Makes the object go down
function goUp(move){
    if (this.y<0){
        this.moveIt(0,this.y-move)
        if (loop) setTimeout(this.obj+".up("+move+")",speed)
    }
}

//Calls the scrolling functions. Also checks whether the page is loaded or not.
function scroll(speed){
    if (scrolltextLoaded){
        loop = true;
        if (speed>0) oScroll.down(speed)
        else oScroll.up(speed)
    }
}

//Stops the scrolling (called on mouseout)
function noScroll(){
    loop = false
    if (timer) clearTimeout(timer)
}

//Makes the object
var scrolltextLoaded = false
function scrolltextInit(lmnt, srll){
    if(document.getElementById(lmnt)){
        oCont = new makeObj(lmnt);
        oScroll = new makeObj(srll,lmnt);
        oScroll.moveIt(0,0);
        oCont.css.visibility = "visible";
        scrolltextLoaded = true;
    }
}


function initScrollable(lmnt, srll){
    if (bw.bw) scrolltextInit(lmnt, srll);
}
Avatar billede skovenborg Nybegynder
25. juni 2004 - 19:10 #1
hmm, har du en side hvor du bruger scriptet på?

Og hvis ikke kunne du måske vise den html-kode du bruger for at starte scriptet (altså hvad htmlkode som "følger med" til scriptet).
Avatar billede skovenborg Nybegynder
25. juni 2004 - 19:14 #2
og uden at have mulighed for at teste det, så kunne et vildt gæt være:
function goDown(move){
    if (this.y>-this.scrollHeight+oCont.clipHeight){
        this.moveIt(0,this.y-move)
    }
    else {
        this.moveIt(0,0);
       
    }
if (loop) setTimeout(this.obj+".down("+move+")",speed)
}
Avatar billede jahamnej Nybegynder
28. juni 2004 - 09:38 #3
perfekt... sorry jeg ikke fik det hele med, men det virker, så det er jo cool... point til dig
Avatar billede jahamnej Nybegynder
28. juni 2004 - 09:39 #4
smid lige et svar
Avatar billede skovenborg Nybegynder
28. juni 2004 - 16:16 #5
værgsesågod :-)
Avatar billede skovenborg Nybegynder
28. juni 2004 - 16:16 #6
det var jeg temmelig dårlig til ;-)
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