Avatar billede horsmark Nybegynder
30. juli 2001 - 17:03 Der er 21 kommentarer og
1 løsning

Flere id=01´s der skal ændre baggrundsfarve ved onMouseOut

Jeg har...

<td id=01>
<td id=02>
<td id=01>
<td id=01>
<td id=01>
<td id=01>

Hvordan kan jeg vælge ALLE dem med id=01. Jeg har læst noget om DOM men der går man ud fra at hver id er unique... Kan det lade sige gøre at ændre eks. bgcolor på flere <td>´s med samme id=01
Avatar billede horsmark Nybegynder
30. juli 2001 - 17:05 #1
Ps. Når jeg bruger document.getElementById(\"01\").bgColor= #ff0000 fanger jeg KUN det første element der har id=01 (selvfølgeligt)
Avatar billede jakoba Nybegynder
30. juli 2001 - 17:10 #2
brug \" og strengparametre, og husk at dine id\'er skal have et lovligt javascript nanv (dvs begunde med et bogstav:

<td id=\"n01\">
<td id=\"n02\">
<td id=\"n01\">
<td id=\"n01\">
<td id=\"n01\">
<td id=\"n01\">

så risikerer du ikke at finde \"det element der har nummer 1\" når du leder efter \"det element der har navn \"01\".

mvh JakobA
Avatar billede jakoba Nybegynder
30. juli 2001 - 17:13 #3
Når du bruger samme navn flere gange skal det være  class=\"n01\" .
ID-navne bør kun bruges een gang i hele dokumentet.
Avatar billede jakoba Nybegynder
30. juli 2001 - 17:17 #4
der er vistnok noget med:
  window.styles.classnavn.background = \"#123456\";
for at sætte baggrundsfarven i alle elementer i den klasse.

Men en anden må komme med den korrekte adressering, for jeg tvivler på ovenstående er den rette.

mvh JakobA
Avatar billede horsmark Nybegynder
30. juli 2001 - 17:18 #5
hmm dvs

document.getElementById(\"n01\").bgColor= #ff0000
<td class=\"n01\">

øhhh.... jeg er efterhånden træt af at være dummie i JavaScript så RET mig RET mig RET mig RET mig RET mig RET mig RET mig RET mig RET mig ... så jeg kan lære mere :-)
Avatar billede jakoba Nybegynder
30. juli 2001 - 17:21 #6
Nej. du kan ikke bruge getElementById på et class navn, netop fordi der kan være flere elementer med den klasse.

Du skal have adresseret klassen selv. (på nåt vis:)
Avatar billede jakoba Nybegynder
30. juli 2001 - 17:31 #7
I IE ser det ud til at adressen er:

self.document.styleSheets[\"n01\"].background = \"FF0000\";

prøv den
Avatar billede jakoba Nybegynder
30. juli 2001 - 17:39 #8
næe, det hedder vist:
self.document.styleSheets[\"n01\"].style.backgroundColor = \'#ff0000\';
Avatar billede horsmark Nybegynder
30. juli 2001 - 17:43 #9
Er det crossbrowser??
Avatar billede horsmark Nybegynder
30. juli 2001 - 17:52 #10
Her er koden...

<html>
<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">
<head>
<title>SWING KING</title>
<LINK REL=\"STYLESHEET\" HREF=\"http://td171794/SWINGKINGstyle.css\" TYPE=\"text/css\">
<!--#include file=\"../../adovbs.inc\"-->

<script language=\"JavaScript1.2\">

hex=255 // Initial color value.
function fadein(){
if(hex>0) { //If color is not black yet
hex-=11; // increase color darkness
document.getElementById(\"n01\").bgColor=\"rgb(\"+hex+\",\"+hex+\",\"+hex+\")\";
setTimeout(\"fadein()\",50);
}
else
hex=255 //reset hex value
}
</script>
</head>
<body>
<table border=\"0\">
<tr><td id=\"n01\"
        STYLE=\"cursor:hand;\"
        onClick=\"fadein();\"
    >ID n01 (1)</td></tr>
<tr><td id=\"n01\"
        STYLE=\"cursor:hand;\"
        onClick=\"fadein();\"
    >ID n01 (2)</td></tr>
</table>
</html>
Avatar billede jakoba Nybegynder
30. juli 2001 - 17:52 #11
Ikke spor crossbrowser. i NS hedder det utvivlsomt noget andet; ,em det burde også være muligt at adressere klassen der.

Betyder ovenstående at den der virkede i IE?
Avatar billede horsmark Nybegynder
30. juli 2001 - 17:53 #12
nope den virkede ikke derfor har jeg nu smidt koden frem fra skabet :o)
Avatar billede jakoba Nybegynder
30. juli 2001 - 18:01 #13
brug class istedet for id.  et givet id må KUN bruges een gang.

<table border=\"0\">
<tr><td class=\"n01\"
        STYLE=\"cursor:hand;\"
        onClick=\"fadein();\"
    >ID n01 (1)</td></tr>
<tr><td class=\"n01\"
        STYLE=\"cursor:hand;\"
        onClick=\"fadein();\"
    >ID n01 (2)</td></tr>
</table>

har du lavet ID om til class i \'http://td171794/SWINGKINGstyle.css\'?

mvh JakobA
Avatar billede jakoba Nybegynder
30. juli 2001 - 18:08 #14
jeg får en \"ukendt fejl [1 804B001E]\" når jeg prøver at downloade din css fil.
Kan du fortælle mig hvad der står i den?
Avatar billede horsmark Nybegynder
30. juli 2001 - 18:09 #15
jeg kan sende den til dig?

Min mail er HorsMark@tdc.dk

->ps. http://td171794 er min intranetserver så hvis du kunne kalde den havde jeg ét problem eller 123615½ ;-)
Avatar billede jakoba Nybegynder
30. juli 2001 - 18:58 #16
Ja det var jo en god grund :-)).
her virker faden i det mindste:
http://hjem.get2net.dk/Jakob.Aggernaes/temp/exp93470.html
men det er en sølle løsning for jeg adresserer ind i de definerede styles med et nummer, istedet for med navnet \"n01\".
self.document.styleSheets[0].rules[2].style.backgroundColor = \"rgb(\"+hex+\",\"+hex+\",\"+hex+\")\";
Det må kunne gøres bedre (rules[2] er 0,1,2-ende definition i stylesheetet).

Jeg har ikke gjort noget for at gøre den crossbrowser. Netscape kan alligevel ikke forstå onclick events i en <td kommando.
fejlen:
[an error occurred while processing this directive]
kommer af at jeg ikke har den fil der skal SSI-includes. den skulle være ok når du kopierer siden \'hjem\' :-))

Men den adressering er ikke god nok til at gå i produktion med. det må kunne gøres bedre.

mvh JakobA
Avatar billede horsmark Nybegynder
30. juli 2001 - 19:03 #17
oki takker du får pointsne...

Hvad hmm forstår NS onMouseOver onMouseOut i <td>´s ?
Avatar billede jakoba Nybegynder
30. juli 2001 - 19:10 #18
Desværre. Det nærmeste jeg kan foreslå er løbende at aflæste x,y værdier for cellerne. (og så have en onclick på body der lige tester hvor der blev klikket før den evt går videre til fade-funktionen.)
du kan finde det meste af den nødvendige kode her:
http://hjem.get2net.dk/Jakob.Aggernaes/temp/exp57415.html

tak for points.

mvh JakobA
Avatar billede horsmark Nybegynder
30. juli 2001 - 19:13 #19
takker... ved du forresten hvor på nættæt jeg kan finde en \"ordbord\" over ALLE kommandoer, Elementer, Objecter osv i JavaScript

IKKE et ordnetindex men en A-Z forklaring ?
Avatar billede jakoba Nybegynder
30. juli 2001 - 19:22 #20
Den jeg mest bruger er den for Netscapes Javascript reference manual:
http://developer.netscape.com/docs/manuals/js/client/jsref/index.htm

led i index efter objektets klassenavn (fx \"document\") klik og klig så igen der der står \"... methos of document.\". Så er du henne ved en ganske god og komplet beskrivelse af det objekt.
IE\'s layout for diverse objekter er så lidt anderledes, men man kan stort set regne med at det man finder der også går i IE.

mvh JakobA
Avatar billede horsmark Nybegynder
30. juli 2001 - 19:24 #21
ok vil lige sove en 30 timers tid og så håbe mine små grå kaperer mere input (har været på SQL kursus hele dagen *FEDT!*)

tak for hjælpen :-)
Avatar billede jakoba Nybegynder
30. juli 2001 - 19:25 #22
:-)
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester