[JS] OnMouseOver en createElement

Pagina: 1
Acties:

  • Rhapsody
  • Registratie: Oktober 2002
  • Laatst online: 23:18

Rhapsody

In Metal We Trust

Topicstarter
Hallo,

Ik heb een stukje geschreven in Javascript waarmee ik nu heel makkelijk een menuutje kan maken:

HTML:
1
2
3
4
5
6
7
8
var tlb = new Toolbar('main', 5);
tlb.setContainer('tlbMain');
tlb.setSkin('2003');
tlb.addButton('New', 'New', 'images/icons/new.gif', 'Create new document');
tlb.addButton('Open', 'Open', 'images/icons/open.gif', 'Open an existing document');
tlb.addButton('Save', 'Save', 'images/icons/save.gif', 'Save document');
tlb.addButton('Validate', '', 'images/icons/validate.gif', 'Validate source');
tlb.Create();


In de js functie Create() maak ik het menu dynamisch aan.
Ik loop alle items in een array (addButton, voegt dus een item toe aan de array)
en maak de elementen aan dmv document.createElement.

Nu wil ik een onmouseover en onmouseout aan de elementen vastbinden, maar dat wil niet goed lukken.
Op de een of andere manier werkt alleen het laatste item van het menu.
Ook als ik over andere items heen ga, wordt de laatste optie 'gehighlight'

De code daarvoor is alsvolgt:
code:
1
2
3
4
5
6
7
8
tdBtn.onmouseover = function() 
{
    obj = document.getElementById(tdBtn.id);
    obj.style.borderColor = bcolor;
    obj.style.borderStyle = 'solid';
    obj.style.cursor = 'pointer';
    obj.style.background = bgColor;
}


Ik vermoed dat tdBtn elke keer wordt overschreven in de for loop (die alle items naloopt)

Is hier een oplossing voor?

Ik had in de search wel soortgelijke topics gevonden, maar die lostten niet het probleem op....

🇪🇺 pro Europa!


Verwijderd

http://devedge.netscape.c.../guide/ident.html#1009822

Overigens vind ik het erg vreemd dat je in de method tdBtn.onmouseover de property tdBtn.id gebruikt. Heb je nooit van het this keyword gehoord?

[ Voor 46% gewijzigd door Verwijderd op 11-09-2004 17:34 ]


  • Rhapsody
  • Registratie: Oktober 2002
  • Laatst online: 23:18

Rhapsody

In Metal We Trust

Topicstarter
Heb ik zeker wel van gehoord, had ik eerst ook staan. Maar omdat het niet werkte heb ik het een en ander aangepast.

Ik ga even die site bekijken.

ik heb het gevonden!! Harstikke bedankt, ik moest alleen ff 'var' voor de declaratie zetten van tdBtn.

[ Voor 27% gewijzigd door Rhapsody op 11-09-2004 17:38 . Reden: Oplossing gevonden ]

🇪🇺 pro Europa!