function show(id,tf) { if (tf == true) { default1.style.display = "none"; id.style.display = "block"; } if (tf == false) { default1.style.display = "block"; id.style.display = "none"; } } ----------------------------------------------------
På begge sider anvender jeg en while til at hente alle data ud af min database og liste disse i en tabel. Meningen er så, at når man holder musen over en tabelrække skjuler den et standard billede og viser istedet et billede afhængig af hvad du holder musen over.
I min while har jeg følgende kode: ---------------------------------------------------- $katbilleder[$row['id']]=$row['billede']; ---------------------------------------------------- Der hvor jeg så skal have vist mit billede bruger jeg følgende kode:
Det virker fint på min personale side, men jeg har også et katalog, hvor jeg anvender nøjagtig samme stykke kode hvor det så ikke virker.
Til at udføre den samme funktion i mit katalog har jeg dertil et nyt script næsten nøjagtig magen til det andet, som også ligger i min index.php: --------------------------------------------------------------
function profil(id,tf) { if (tf == true) { id.style.display = "block"; } if (tf == false) { id.style.display = "none"; } }
som du har pastet koden hér har du byttet rundt på scriptene; i det øverste har du en js-funktion der hedder "show", men du kalder en js-funktion der hedder "profil" ved mousover og omvendt i det nederste. sådan ser det ikke ud på din side vel?
Hov ja, jeg har vist lige byttet rundt på scriptene...det er selvfølige ikke sådan det står i selve koden; eller det vil sige, at begge scriptene står i starten af index.php, mens på katalog siden og
Hm. tjo. Jeg har lige testet det i henholdsvis Firefox og IE:
IE: Katalog siden: Virker fint Personale siden: "Der opstod en fejl på siden" står der i statuslinjen når jeg holder musen over et af de 'link' der skulle vise et billede
Firefox: Katalog siden: Virker ikke Personale siden: Virker fint
I firefox har jeg installeret en HTML validator, den giver mig følgende advarsel:
"<img> Anchor 'profil1' already defined", jeg ved ikke om det har noget at sige, jeg får samme advarsel på både personale siden og katalog siden, men ikke destro mindre virker koden dog fint nok på personale siden
Hm...ja, nu nærmer vi os da vist noget. Firefox reagere i hvertfald på det nu. Mit script gør jo, at et standard billede gerne skulle skjules mens et andet billede - anhængig af hvad man holder musen over - bliver vist. Lige nu bliver mit standard billede skjult når jeg holder musen over et af 'linkene', men den viser ikke det billede den så gerne skulle gøre istedet for. Den viser ingenting.
Mit script ser nu således ud:
------------------------------------------------ function show(id,tf) { if (tf == true) { document.getElementById('default1').style.display = "none"; document.getElementById('id').style.display = "block"; } if (tf == false) { document.getElementById('default1').style.display = "block"; document.getElementById('id').style.display = "none"; } }
Jeg laver jo en while hvor jeg så henter alle mine 'links' ud fra databasen. Det aller første jeg gør i min while er at lave et array hvor hvert billede der er knyttet til det pågældende link blier associeret med en nøgle.
Efter min while, der hvor jeg skal have vist billederne deler jeg så mit array op med en foreach:
grunden til at det ikke virkede før var faktisk det samme som i dine funktion; du skal have ' rundt om en streng, ellers tror den at det er en variabel. så når du skriver show(kat'.$['id'], true); vil den "lede efter" en variabel der hedder kat1 f.eks. men det skal den ikke, den skal bruge strengen kat1, så derfor skal den ind i '
mht point, så skal du bare acceptere dette svar som jeg har lagt hér, ude til venstre
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.