[JavaScript] Het scrollen in <marquee> stoppen bij mouseover

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

K i p

K i p

04/02/2007 13:44:00
Quote Anchor link
Beste,

Ik heb vandaag een beetje zitten puzzelen. Ik wil graag dat als een gebruiker met zijn muis over het marquee gedeelte gaat, dat hij dan stopt met scrollen.

In FireFox is dit gelukt, maar ik heb mij laten vertellen dat het in Internet Explorer niet goed werkt, en dat je de volgende error krijgt:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
Stack overflow at line 49
Je kunt het hier vinden: marquee.php.

Het gaat hierbij dus met name om de functies start(e) en stop(e). De overflow error van IE kreeg ik bij de volgende functies:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
function start (e)
{
    this.start();
}
function stop(e)
{
    this.stop();
}
Ik heb ook dit geprobeert:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
function start (e)
{
    this.setAttribute('scrolldelay' , '3');
}
function stop(e)
{
    this.setAttribute('scrolldelay' , '9999999999');
}
Hij stopt nu wel bij mouseover, maar hij gaat niet meer verder bij mouseout.

Weten jullie hoe dit wel moet?

Alvast bedankt voor de hulp.

Groeten,

Boris
Gewijzigd op 01/01/1970 01:00:00 door K i p
 
PHP hulp

PHP hulp

19/11/2024 08:18:47
 
K i p

K i p

05/02/2007 15:41:00
Quote Anchor link
Dit:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
function start (e)
{
    this.setAttribute('scrollamount' , '3');
}
function stop(e)
{
    this.setAttribute('scrollamount' , '0');
}
heb ik ook al geprobeerd, en werkt niet in IE. Dit
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
function start (e)
{
    document.getElementById('top5_down').setAttribute('scrollamount' , '3');
}
function stop(e)
{
    document.getelementById('top5_down').setAttribute('scrollamount' , '0');
}
werkt wel in FireFox, maar is nog niet in IE getest. Kan iemand dit doen? Ik kan dit zelf niet, want zit op een mac. Oftewel:

Hump de Bump
Gewijzigd op 01/01/1970 01:00:00 door K i p
 
Robert Deiman

Robert Deiman

05/02/2007 15:54:00
Quote Anchor link
Als je het nu op die manier in je pagina (marquee.php, de link die je eerder postte) hebt verwerkt, werkt het niet in IE. Probeer een combinatie te maken in die functie.
 
K i p

K i p

05/02/2007 15:56:00
Quote Anchor link
Hoe bedoel je precies een combinatie? Kan je me een klein duwtje geven?
 
Simon Blok

Simon Blok

05/02/2007 16:04:00
Quote Anchor link
Om anderen voor te zijn...marquee is niet w3c-valid!
 
Niek s

niek s

05/02/2007 16:41:00
Quote Anchor link
Saimen schreef op 05.02.2007 16:04:
Om anderen voor te zijn...marquee is niet w3c-valid!


Dus?

Maar goed. Ik weet niet of het de bedoeling is dat als ik in Firefox 2 over de linker marquee heen ga, dat de rechter dan stopt en de linker niet? en als ik dan over de rechter ga, stopt de rechter ook en niet de linker.

Ik draai Firefox 2.0.0.1, Ubuntu 6.10 Edgy Eft.

En de stop waar je het over hebt. Ik kan het hier niet controleren, maar is er niet een combinatie te maken in de 2 functies? Of door een if ie te maken? dat de versie die werkt bij ie, die wordt gebruikt bij ie en de versie die bij de rest werkt wordt gebruikt bij de rest? (if u get wht i mean..)
 
K i p

K i p

05/02/2007 17:15:00
Quote Anchor link
Quote:
Quote:
Om anderen voor te zijn...marquee is niet w3c-valid!
Dus?
Idd
Quote:
Ik weet niet of het de bedoeling is dat als ik in Firefox 2 over de linker marquee heen ga, dat de rechter dan stopt en de linker niet?
Dat doet er nu even niet toe. Ik weet hoe dit komt, maar het is alleen even om te testen, let alleen op de rechter.

Ik snap je punt met ifIE maar welke werkt dan in IE?
 
Simon Blok

Simon Blok

05/02/2007 17:51:00
Quote Anchor link
Boris schreef op 05.02.2007 17:15:
Quote:
Quote:
Om anderen voor te zijn...marquee is niet w3c-valid!
Dus?
Idd
Quote:
Ik weet niet of het de bedoeling is dat als ik in Firefox 2 over de linker marquee heen ga, dat de rechter dan stopt en de linker niet?
Dat doet er nu even niet toe. Ik weet hoe dit komt, maar het is alleen even om te testen, let alleen op de rechter.

Ik snap je punt met ifIE maar welke werkt dan in IE?


Ik bedoel maar....je kunt beter w3c-valid programeren, dan werkt alles goed! Dus zo gek is het niet hoor!!
 
- -

- -

05/02/2007 18:02:00
Quote Anchor link
Op www.fczeselectie.nl staat een verticale lichtkrant, misschien heb je daar wat aan. Hij is XHTML valid volgens mij. Als je hem horizontaal wilt hebben zul je hem wel even om moeten bouwen.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
/***********************************************
* Cross browser Marquee II-  Dynamic Drive (www.dynamicdrive.com)
* This notice MUST stay intact for legal use
* Visit http://www.dynamicdrive.com/ for this script and 100s more.
***********************************************/

var delayb4scroll=200 //Specify initial delay before marquee starts to scroll on page (2000=2 seconds)
var marqueespeed=1 //Specify marquee scroll speed (larger is faster 1-10)
var pauseit=1 //Pause marquee onMousever (0=no. 1=yes)?

////NO NEED TO EDIT BELOW THIS LINE////////////

var copyspeed=marqueespeed
var pausespeed=(pauseit==0)? copyspeed: 0
var actualheight=''

function scrollmarquee(){
if (parseInt(cross_marquee.style.top)>(actualheight*(-1)+8))
cross_marquee.style.top=parseInt(cross_marquee.style.top)-copyspeed+"px"
else
cross_marquee.style.top=parseInt(marqueeheight)+8+"px"
}

function initializemarquee(){
cross_marquee=document.getElementById("vmarquee")
cross_marquee.style.top=0
marqueeheight=document.getElementById("marqueecontainer").offsetHeight
actualheight=cross_marquee.offsetHeight
if (window.opera || navigator.userAgent.indexOf("Netscape/7")!=-1){ //if Opera or Netscape 7x, add scrollbars to scroll and exit
cross_marquee.style.height=marqueeheight+"px"
cross_marquee.style.overflow="scroll"
return
}
setTimeout('lefttime=setInterval("scrollmarquee()",30)', delayb4scroll)
}

if (window.addEventListener)
window.addEventListener("load", initializemarquee, false)
else if (window.attachEvent)
window.attachEvent("onload", initializemarquee)
else if (document.getElementById)
window.onload=initializemarquee


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<table cellspacing="0" cellpadding="0">
    <tr>
        <td class="boven">Actueel</td>
    </tr>
    <tr>
        <td class="midden" style="padding-top: 0px; padding-bottom: 0px;">
<div id="marqueecontainer" onMouseover="copyspeed=pausespeed" onMouseout="copyspeed=marqueespeed">

<div id="vmarquee" style="position: absolute; width: 98%;">

Hier je tekst<br /><br />
En hier nog wat tekst.<br /><br />
Lorem ipsum dolor sit amet enz...

</div>
</div>
Gewijzigd op 01/01/1970 01:00:00 door - -
 
K i p

K i p

05/02/2007 18:11:00
Quote Anchor link
Quote:
Ik bedoel maar....je kunt beter w3c-valid programeren, dan werkt alles goed! Dus zo gek is het niet hoor!!
Ook zonder JavaScript? Sommige bezoekers van je website zullen geen JavaScript hebben, en wel sch*t aan W3C. Ik vind het leuk om ze dan toch een lichtkrant aan te bieden (ook al werkt die niet in alle browsers).

@Herjan: Hee die ziet er leuk uit :-) Alleen het probleem bij die is dat je hem meteen helemaal ziet, en dat hij dan omhoog gaat scrollen. Als hij dan helemaal weg is dan ploept ie weer opeens. Het komt dan een beetje haperig over. Ook moet je hem persé met position: absolute; doen, wat toch wel een nadeel is. Hij gaat wel lekker smooth.

Dus, kent iemand er nog één (betere)? Of ziet iemand het probleem bij mijn code?
 
Simon Blok

Simon Blok

05/02/2007 18:55:00
Quote Anchor link
Ze kunnen wel sch*t hebben aan w3c, maar niet als het niet werkt. Maar goed...het is een kwestie van smaak denk ik! :-). Het was verder niet negatief tegen jou bedoeld or!
 
K i p

K i p

05/02/2007 20:18:00
Quote Anchor link
Quote:
(ook al werkt die niet in alle browsers)
Quote:
Ze kunnen wel sch*t hebben aan w3c, maar niet als het niet werkt.
Maar goed, idd een kwestie van smaak. Als browsers die tag niet kennen dan negeren ze hem waarschijnlijk en zetten ze de gewone content neer.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.