[JS]Layer scrollen in Mozilla

Pagina: 1
Acties:

  • Dr_Frickin_Evil
  • Registratie: Mei 2000
  • Laatst online: 19:39
Ik heb weer een probleempje met javascript en mozilla. Ik heb een scriptje gemaakt, waarmee ik mbv 2 knopjes een layer met id "content" naar boven of beneden kan laten scrollen. Werkt in IE prima. In Mozilla werkt het helemaal niet. Dit is de code:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
var speed = 0;
var scrollen="";

function startscroll() {
    if(scrollen=="") {
        scrollen=window.setInterval("scrolllayer()",2);
        }
    else{
        stopscroll();
        }
    }
    
function stopscroll(){
    if(scrollen!=""){
        window.clearInterval(scrollen);
        scrollen="";
        }
    }
            
function scrolllayer() {
    var layer = document.getElementById('content');
    layer.scrollTop  += speed;
    }


De code wordt vanuit de HTML op de volgende manier aangeroepen:
code:
1
2
3
4
5
6
7
8
    <div id="scrollknop">
        <div onmousedown="speed=-2;startscroll();"
             onmouseup="speed=0;stopscroll();">
            [img]"images/up.gif"[/img]</div>
        <div onmousedown="speed=2;startscroll();"
             onmouseup="speed=0;stopscroll();">
            [img]"images/down.gif"[/img]</div>
    </div>

Dit alles werkt in IE prima, maar probeer ik het in Mozilla, dan gebeurd er niks. Vervang ik bijv in de javascript-functie scrolllayer() layer.scrollTop door document.body.scrollTop dan werkt het scrollen wel (maar dan scrollt uiteraard de hele body ipv alleen het div met id content). Ik vond met de search dat pageYOffset zou moeten werken in Mozilla, maar vervangen van layer.scrollTop door layer.pageYOffset werkt ook niet. Hoe moet het wel??

  • Hangloozz
  • Registratie: Juli 1999
  • Laatst online: 13-07 17:24

Hangloozz

{ @$%&# }

layer soms nog een gereserverd woord in Mozilla? (ivm backward compatibility met NN4.x...)
doet es een andere naam verzinnen.
Daarnaast kan ik me voorstellen dat scrollTop geen DOM property is en dat je naar een andere property op zoek moet.

www.jurgroessen.nl


Verwijderd

Ik weet het ook niet, maareh, ik zou die var layer = document.getElement buiten scrollayer() zetten, want dit lijkt me wat inefficient. Zegt javascript console niks?

  • Dr_Frickin_Evil
  • Registratie: Mei 2000
  • Laatst online: 19:39
veranderen van de naam layer heeft geen effect, en de javascript console geeft hier geen foutmelding over. De site is hier te bekijken, misschien dat jullie dan zien wat het probleem is http://131.155.240.208/berson/test.php?url=home2.html

Verwijderd

Krijg alleen "The connection was refused" op die link.

  • Dr_Frickin_Evil
  • Registratie: Mei 2000
  • Laatst online: 19:39
IIS had kuren, hij doet het weer nu.

Verwijderd

Even door de w3 validator gehaald. Zit de volgende error bij:
onmousewheel="scrollwheel('content')">
onmousewheel kent ie niet; wellicht een IE only ding...

  • Dr_Frickin_Evil
  • Registratie: Mei 2000
  • Laatst online: 19:39
idd, das een IE only event, maar dat heb ik ook alleen maar gedaan zodat je ook met je scrollwieltje kan scrollen. De 2 knopjes linksonder zouden ook gewoon in Mozilla oid moeten werken.

(voor de duidelijkheid, ik ben ook echt geen fan van dit soort scrollknopjes, maar de klant wilde het perse zo).

Verwijderd

Dan weet ik het ook nie. Misschien kun je hier wat mee:
http://www.xs4all.nl/~ppk/js/layerscroll.html

  • misfire
  • Registratie: Maart 2001
  • Laatst online: 08-07 20:56
scrollTop is een IE only property. In Mozilla kun je wel dat ding zetten, maar dan heeft het verder geen betekenis. De CSS property "top" zou wel moeten werken in Mozilla. Merk op dat je hier wel op een andere manier mee om moet gaan dan in IE. Op Internet zijn er voldoende voorbeelden voor cross-browser scrollen van content, daar zou je als het goed is je probleem op mee kunnen lossen...

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

offtopic:
DJ_Frickin_Evil
Mag ik je aanraden hier even een check voor in te bouwen?
http://131.155.240.208/berson/test.php?url=test.php

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • Hangloozz
  • Registratie: Juli 1999
  • Laatst online: 13-07 17:24

Hangloozz

{ @$%&# }

drm schreef op 09 April 2003 @ 17:03:
offtopic:
DJ_Frickin_Evil
Mag ik je aanraden hier even een check voor in te bouwen?
http://131.155.240.208/berson/test.php?url=test.php
:D :D _/-\o_

www.jurgroessen.nl

Pagina: 1