Hoi allemaal,
Ik ben bezig om een applicatie voor meer browsers te laten werken dan alleen IE. Daarvoor moet ik de code van mijn op IE gerichte collega aanpassen en ik kom één stukje tegen waar ik niet uitkom en waarvan ik hoop dat jullie kunnen helpen.
Het gaat om de volgende code:
De code gaat momenteel op Firefox mis op het event.toElement stuk aangezien window.event binnen Firefox niet wordt ondersteund. Ik heb geprobeerd dit werkend te krijgen met deze code:
Deze code werkt nog steeds goed in IE, maar helaas nog steeds niet in Firefox. Ik geef het "event" verkeerd door aan de functie, maar ik weet niet niet hoe het wel moet. De functie aanroep is overanderd en heeft dus twee argumenten.
Ik ben bezig om een applicatie voor meer browsers te laten werken dan alleen IE. Daarvoor moet ik de code van mijn op IE gerichte collega aanpassen en ik kom één stukje tegen waar ik niet uitkom en waarvan ik hoop dat jullie kunnen helpen.
Het gaat om de volgende code:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
| function mOut( object, className) {
// OnMouseOut event - control the object that is currently being handled
// Parameter(s): object - object currently being handled
// className - new class style for object
if ( object != null)
{ if (!object.contains( event.toElement))
{ var strClass = new String( object.className).toUpperCase();
if ( strClass.indexOf( 'ACTIVE') < 0)
{ object.style.cursor = 'default';
object.className = className;
} // if
} // if
} // if
} // function |
De code gaat momenteel op Firefox mis op het event.toElement stuk aangezien window.event binnen Firefox niet wordt ondersteund. Ik heb geprobeerd dit werkend te krijgen met deze code:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
| function mOut( object, className, e ) {
// OnMouseOut event - control the object that is currently being handled
// Parameter(s): object - object currently being handled
// className - new class style for object
var relTarg;
if (!e) var e = window.event;
if (e.relatedTarget) relTarg = e.relatedTarget;
else if (e.toElement) relTarg = e.toElement;
if ( object != null)
{ if (!object.contains( relTarg))
{ var strClass = new String( object.className).toUpperCase();
if ( strClass.indexOf( 'ACTIVE') < 0)
{ object.style.cursor = 'default';
object.className = className;
} // if
} // if
} // if
} // function |
Deze code werkt nog steeds goed in IE, maar helaas nog steeds niet in Firefox. Ik geef het "event" verkeerd door aan de functie, maar ik weet niet niet hoe het wel moet. De functie aanroep is overanderd en heeft dus twee argumenten.
[ Voor 3% gewijzigd door martdj op 19-01-2006 15:14 ]