function rowOver(){ lmnt = window.event.srcElement; if (lmnt.tagName.toUpperCase() == 'TABLE') return; while (lmnt.tagName.toUpperCase() !='TR') lmnt = lmnt.parentElement; lmnt.style.background = "#D9D9C9"; }
function rowOut(){ lmnt = window.event.srcElement; if (lmnt.tagName.toUpperCase() == 'TABLE') return; while (lmnt.tagName.toUpperCase() !='TR') lmnt = lmnt.parentElement; lmnt.style.background ="#E2E2D4"; }
function rowOverTD(){ lmnt = window.event.srcElement; if (lmnt.tagName.toUpperCase() == 'TABLE') return; while (lmnt.tagName.toUpperCase() !='TD') lmnt = lmnt.parentElement; lmnt.style.background = "#D9D9C9"; }
function rowOutTD(){ lmnt = window.event.srcElement; if (lmnt.tagName.toUpperCase() == 'TABLE') return; while (lmnt.tagName.toUpperCase() !='TD') lmnt = lmnt.parentElement; lmnt.style.background ="#E2E2D4"; }
</SCRIPT>
og så brug denne: <table border="0" cellpadding="2" onMouseOut="rowOut();" onMouseOver="rowOver();" width="520"> <tr> <th bgcolor="#E2E2D4"><font face="Verdana" size="2"><b> Produkt</b></font></th> <th bgcolor="#E2E2D4" align="middle"><font face="Verdana" size="2"><b>Pris</b></font></th> <th bgcolor="#E2E2D4" align="middle"><font face="Verdana" size="2"><b>Bestil</b></font></th> </tr>
<tr bgcolor="#e2e2d4"> <td> <font size="2" face="Verdana"> <a href="adress.asp"><b>Compaq Harddisk 4000 Gbyte</b><br>Den nye harddisk fra Compaq er den største nogensinde. Den har en kapisitet på 8000 Gbyte</a> </font></td> <td align=middle> <font size="2" face="Verdana"><b>166.625</b><br>(1.333,00)</font> </td> <form action="shop.asp?add=newOrder&ProductID=2" method="post"> <td align="middle"><font face="Verdana" size="2">
den eneste IE version der kun anvender all og ikke getElementById er version 4. Der er flere der bruger NS4 end IE4 så det ville være bedre at tage højde for den hvis man endelig vil lave det bagud-kompatibelt.
Kan god se det gode i maddog's løsning, ja jeg er mest til IE... Dette kan jeg jo også lære af, men hvordan retter du lige koden, så det kun er td'erne ved siden af der skifter farve.
maddog > Det har jeg sørget for.. =) Jeg kender godt til en lille smule JavaScript, jeg skulle bare lige bruge formeln til at skifte farve i det andet felt..
pato> ved at angive et unikt id på nabocellen og indexere det med getElementById. <td id="en_streng_der_er_unik_for_mig"></td> style kan sættes med obj.style for alle objekter der understøtter dynamisk styling.
maddog > mangler lige lidt erfaring i brugen af getElementById....prøver at forstå hvorledes det kan flettes ind i dine funktioner, så det bliver generisk :-)
getElementById er en del af DOM (document object model) strukturen, og det må du hellere stifte bekendtskab med, for det er fremtidens dynamiske javascript. andre eksempler. obj = document.createElement('div') , laver en ny div document.body.appendChild(obj) , tilføjer obj til <body> objarray = document.getElementsByTagName('span') , returnerer alle <span> objekter som array head = document.getElementsByTagName('head').item(0) , index til <head> og så videre og så videre
maddog >> Takker mange gange, jeg skal nok sætte min ind i det....arbejder faktisk kun med asp ...javascript bruger jeg kun til husbehov - som det nu er nødvendigt med det jeg laver.
Synes godt om
Ny brugerNybegynder
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.