Avatar billede w13 Novice
14. september 2003 - 18:16 Der er 14 kommentarer og
1 løsning

Scrollende iframe

Hvordan får man en side (som er vist i Iframe) til at scrolle? (Dvs. nedefra og opefter. Ligesom et nyhedsfelt!) Og når den når toppen, ville jeg gerne have den til at starte forfra... Kan det lade sig gøre med en enkelt kode.

kh
W13
Avatar billede cdc Novice
14. september 2003 - 18:48 #1
scrolle effekten har intet med iframen at gøre, men det doc du får ind i iframen.

denne kører i loop: http://www.dynamicdrive.com/dynamicindex2/iframe-scroller.htm
Avatar billede w13 Novice
14. september 2003 - 19:14 #2
Lige netop den har jeg forsøgt mig med, og den har voldt mig mange problemer... Kun sjældent duer den... andre?
Avatar billede skovenborg Nybegynder
14. september 2003 - 22:30 #3
Det her virker i hvert fald i Mozilla - kan ikke lige finde de rigtige kommandoer  til MSIE:
<script type="text/javascript">
antal_pixels = -5; //Antal pixels den scroller med
opdatering = 100; //Hvor hurtigt funktionen bliver gentaget
function scrolliframe()
{
if (parent.nyhed.pageYOffset == 0) parent.nyhed.scrollTo(0,parent.nyhed.document.height);
else parent.nyhed.scrollBy(0,antal_pixels);
window.setTimeout("scrolliframe();",opdatering);
}
</script>

<iframe width="100" name="nyhed" height="100" src="side.htm">
</iframe>
Avatar billede roenving Novice
15. september 2003 - 00:44 #4
>>skovenborg

-- prøv med:

body.scrollTop, altså parent.nyhed.body.scrollTop ...
Avatar billede skovenborg Nybegynder
15. september 2003 - 09:46 #5
Tak roenving - det var lige det jeg ledte efter (ud over det hedder parent.nyhed.document.body.scrollTop - men skidt med det)

<script type="text/javascript">
antal_pixels = -5; //Antal pixels den scroller med
opdatering = 100; //Hvor hurtigt funktionen bliver gentaget
function scrolliframe()
{
page_y = (document.all) ? parent.nyhed.document.body.scrollTop : parent.nyhed.pageYOffset;
page_ymax = (document.all) ? parent.nyhed.document.body.scrollHeight : parent.nyhed.document.height;
if (page_y == 0) parent.nyhed.scrollTo(0,page_ymax);
else parent.nyhed.scrollBy(0,antal_pixels);
window.setTimeout("scrolliframe();",opdatering);
}
</script>
</head>
<body onload="scrolliframe();">
<iframe width="100" name="nyhed" height="100" src="side.htm" scrolling="no">
</iframe>
Avatar billede w13 Novice
20. september 2003 - 13:55 #6
Det virker i Mozilla? Jamen... Det har jeg desværre ikke! Har nogen en anden kode?
Avatar billede skovenborg Nybegynder
20. september 2003 - 14:06 #7
prøv den sidste jeg lavede - den virker også i Internet Explorer
Avatar billede w13 Novice
20. september 2003 - 14:40 #8
Hmmm... Desværre... Virker ikke...
Avatar billede skovenborg Nybegynder
20. september 2003 - 14:51 #9
virker den ikke som du havde ventet eller virker den slet ikke???

(jeg har i hvert fald testet den både i IE6.0 og Mozilla 1.4
Avatar billede w13 Novice
20. september 2003 - 15:09 #10
Nu duer den... Hmmm... Svært at finde ud af... Klik her: http://www.goce.dk/test.htm Ka' du se fejlen?
Avatar billede w13 Novice
20. september 2003 - 15:09 #11
Næh, nu virker den da... Meget mystisk... øjeblik!
Avatar billede skovenborg Nybegynder
20. september 2003 - 15:10 #12
Jaa, den virker lidt mærkeligt - vil du gerne have den skal blive stående lidt på toppen eller sådan noget?
Avatar billede w13 Novice
20. september 2003 - 15:10 #13
Underligt... Det er fuldstændig ligesom en anden kode, jeg lige har fundet... Hvis du går ind på http://goce.dk/test.htm virker den ikke... Ka' du finde ud af hvorfor?
Avatar billede skovenborg Nybegynder
20. september 2003 - 15:27 #14
der er fordi du bruger et eksternt url til din iframe (altså http://.....) og derfor kan den ikke hente de nødvendige data som fx hvor højt dokumentet er osv. Du bliver altså nød til at bruge en url som ligger på din egen side.
Avatar billede w13 Novice
20. september 2003 - 15:47 #15
Tak, endelig virker det hele...
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