Avatar billede albani Nybegynder
25. marts 2002 - 11:24 Der er 19 kommentarer og
1 løsning

Scroll down -> up... med stop....

Hejsa

Jeg skal bruge en txt scroller, der som nedenstående scroller en tekst nedefra og op, og som stopper et kort øjeblik ved toppen også derefter forsætter med næste tekst, det gør nedenstående script også ganske godt, MEN jeg skal have den til at være nøjagtig den størrelse jeg har skrevet ind til at starte med, problemet er den fylder mere når den bliver sat ind !!! er der nogen der kan se hvor det "ekstra" kommer fra ?

eller evt. har et bedre script der gør det samme, og som man kan definere helt klart med hensyn til størrelse ?

<style type="text/css">
<!--
   
BODY {    font-family: Verdana; font-size: 10px; font-style: normal; color: #000000;}

-->
</style>
<script language="JavaScript1.2">

var scrollerwidth=86
var scrollerheight=59
var scrollerbgcolor=''

var scrollerbackground=''


var messages=new Array()
messages[0]="<font face='Arial'><a>besked 1 bla bla bla</a></font>"
messages[1]="<font face='Arial'><a href='http://www.bla bla.dk'>besked 2 bla bla!</a></font>"
messages[2]="<font face='Arial'><a>yap yap yap besked 3</a></font>"

if (messages.length>1)
i=2
else
i=0

function move1(whichlayer){
tlayer=eval(whichlayer)
if (tlayer.top>0&&tlayer.top<=5){
tlayer.top=0
setTimeout("move1(tlayer)",3000)
setTimeout("move2(document.main.document.second)",3000)
return
}
if (tlayer.top>=tlayer.document.height*-1){
tlayer.top-=5
setTimeout("move1(tlayer)",100)
}
else{
tlayer.top=scrollerheight
tlayer.document.write(messages[i])
tlayer.document.close()
if (i==messages.length-1)
i=0
else
i++
}
}

function move2(whichlayer){
tlayer2=eval(whichlayer)
if (tlayer2.top>0&&tlayer2.top<=5){
tlayer2.top=0
setTimeout("move2(tlayer2)",3000)
setTimeout("move1(document.main.document.first)",3000)
return
}
if (tlayer2.top>=tlayer2.document.height*-1){
tlayer2.top-=5
setTimeout("move2(tlayer2)",100)
}
else{
tlayer2.top=scrollerheight
tlayer2.document.write(messages[i])
tlayer2.document.close()
if (i==messages.length-1)
i=0
else
i++
}
}

function move3(whichdiv){
tdiv=eval(whichdiv)
if (tdiv.style.pixelTop>0&&tdiv.style.pixelTop<=5){
tdiv.style.pixelTop=0
setTimeout("move3(tdiv)",3000)
setTimeout("move4(second2)",3000)
return
}
if (tdiv.style.pixelTop>=tdiv.offsetHeight*-1){
tdiv.style.pixelTop-=5
setTimeout("move3(tdiv)",100)
}
else{
tdiv.style.pixelTop=scrollerheight
tdiv.innerHTML=messages[i]
if (i==messages.length-1)
i=0
else
i++
}
}

function move4(whichdiv){
tdiv2=eval(whichdiv)
if (tdiv2.style.pixelTop>0&&tdiv2.style.pixelTop<=5){
tdiv2.style.pixelTop=0
setTimeout("move4(tdiv2)",3000)
setTimeout("move3(first2)",3000)
return
}
if (tdiv2.style.pixelTop>=tdiv2.offsetHeight*-1){
tdiv2.style.pixelTop-=5
setTimeout("move4(second2)",100)
}
else{
tdiv2.style.pixelTop=scrollerheight
tdiv2.innerHTML=messages[i]
if (i==messages.length-1)
i=0
else
i++
}
}

function startscroll(){
if (document.all){
move3(first2)
second2.style.top=scrollerheight
second2.style.visibility='visible'
}
else if (document.layers){
document.main.visibility='show'
move1(document.main.document.first)
document.main.document.second.top=scrollerheight+5
document.main.document.second.visibility='show'
}
}

window.onload=startscroll

</script>




<ilayer id="main" width=&{scrollerwidth}; height=&{scrollerheight}; bgColor=&{scrollerbgcolor}; background=&{scrollerbackground}; visibility=hide>
<layer id="first" left=0 top=1 width=&{scrollerwidth};>
<script language="JavaScript1.2">
if (document.layers)
document.write(messages[0])
</script>
</layer>
<layer id="second" left=0 top=0 width=&{scrollerwidth}; visibility=hide>
<script language="JavaScript1.2">
if (document.layers)
document.write(messages[1])
</script>
</layer>
</ilayer>

<script language="JavaScript1.2">
if (document.all){
document.writeln('<span id="main2" style="position:relative;width:'+scrollerwidth+';height:'+scrollerheight+';overflow:hiden;background-color:'+scrollerbgcolor+' ;background-image:url('+scrollerbackground+')">')
document.writeln('<div style="position:absolute;width:'+scrollerwidth+';height:'+scrollerheight+';clip:rect(0 '+scrollerwidth+' '+scrollerheight+' 0);left:0;top:0">')
document.writeln('<div id="first2" style="position:absolute;width:'+scrollerwidth+';left:0;top:1;">')
document.write(messages[0])
document.writeln('</div>')
document.writeln('<div id="second2" style="position:absolute;width:'+scrollerwidth+';left:0;top:0;visibility:hidden">')
document.write(messages[1])
document.writeln('</div>')
document.writeln('</div>')
document.writeln('</span>')
}
</script>
Avatar billede albani Nybegynder
25. marts 2002 - 13:00 #1
ingen der kan hjælpe ?
Avatar billede Slettet bruger
25. marts 2002 - 13:01 #2
Er du sikker på, du har den nyeste version af scriptet? Tjek lige dynamicdrive igen, de har vist en med nogle fixed bugs...
Avatar billede albani Nybegynder
25. marts 2002 - 13:25 #3
ja det er den nyeste version... :-((((( kender du nogen andre steder man evt. kan finde samme slags scroller ? altså med stop, og mulighed for nøjagtig at angive størreslsen ?
Avatar billede albani Nybegynder
25. marts 2002 - 13:25 #4
har fundet en anden et, et andet sted, men der er også problemer med den.... :-(((((((((
Avatar billede nimda Nybegynder
25. marts 2002 - 13:28 #5
jeg har en txt scroller
Avatar billede albani Nybegynder
25. marts 2002 - 13:33 #6
øøhhh... det er jo meget fint, men er det en jeg kan se SKRÅstreg "låne" ?
Avatar billede nimda Nybegynder
25. marts 2002 - 13:40 #8
Den første kan jeg bedst lide:)
Avatar billede albani Nybegynder
25. marts 2002 - 13:45 #9
... det er meget fine, Men.... ikke just det jeg søger....

hvis du kigger på
http://www.dynamicdrive.com/dynamicindex2/crosstick.htm

kan du se hvad det jeg søger... blot en der kan defineres klarere !
Avatar billede albani Nybegynder
25. marts 2002 - 13:48 #10
:-( "HJÆÆÆLP !" )
Avatar billede jakoba Nybegynder
25. marts 2002 - 13:54 #11
desværre, selv med
    font-size:10px;
kan du ikke definere så teksten altid har samme størrelse i alle browsere. NS og IE er uenige om hvor meget liniehøjden skal være
    line-height:20px;
vil hjælpe lidt, men så kommer pfoblemet med dem der viser en default-font eller blot en anden version af den samme.

Det du evt KAN gøre (idover at lave og loade hele teksten som eet .gif billede :(
er at indsætte et mærke efter teksten så du kan aflæse når dit scroll har nået til mærket. Det er rimeligt kompliceret, men muligt.

mvh JakobA
Avatar billede nimda Nybegynder
25. marts 2002 - 13:55 #12
Du bliver sku nød til at lave en <br>
Avatar billede albani Nybegynder
25. marts 2002 - 13:59 #13
tjah det lyder ikke helt let, men problemet er nu ikke så meget tekstestørrelsen, den er god nok i IE (har PT under 1% besøgende med NS)... men selve størrelsen af Scriptet, altså rent højde * bredde mæssigt hænger ikke sammen med det man angiver til at starte med... :-((((

det kommer en "Ramme" om den højde * bredde man angiver, og den ramme er alt for stor og, så vidt jeg kan se ikke til nogen brug !
Avatar billede albani Nybegynder
25. marts 2002 - 14:00 #14
-> nimda: Jamen tak for hjælpen, men havde jeg kunnet lave den selv, ja så havde jeg jo ikke råbt om hjælp her ! ! ! ! ! !
Avatar billede nimda Nybegynder
25. marts 2002 - 14:18 #15
Avatar billede albani Nybegynder
25. marts 2002 - 14:25 #16
SÅDANNER ! det var jo sådan en jeg søger efter, jeg viil forsøge at implementere den senere .... takker mange gange !
Avatar billede nimda Nybegynder
25. marts 2002 - 14:41 #17
kunne du bruge den???
Avatar billede albani Nybegynder
25. marts 2002 - 14:57 #18
Jeg takker i tusindfold af hele mit hjerte (!!!) ENDELIG ! det virker HELT optimalt !

takker !
Avatar billede albani Nybegynder
26. marts 2002 - 20:42 #19
.... nogen der kan fortælle mig hvorledes man kan lave et link til en ny browser i koden fra ovenstående link ???? Altså således at hvis man laver et link i scrolleren, (og klikker på det), så det kommer i et nyt vindue....
Avatar billede Slettet bruger
27. marts 2002 - 09:39 #20
Kan du ikke bare lave et normalt link (?):

<a href="din_side.html" target="_blank">Nyt vindue</a>

Jeg kan ikke se nimda's kodeeksempel, så jeg kan ikke svare så sikkert...
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