Avatar billede vat69 Nybegynder
16. april 2005 - 12:29 Der er 7 kommentarer og
1 løsning

JavaScript funktion der bytter en billede sti ud

Hej eksperter

Jeg har et billede der er i en div og som er hidden via CSS. Et javaS gør at bliver synligt når man går ind på siden.
Der er række andre billeder. Når man klikke på disse kunne jeg godt tænke mig en JAvaS funktion der skifte stien i div taget ud og gør det billede der hentes ind synligt.

Jeg har prøvet at lave denne funktion MEN uden held. Er der nogen der kan hjælpe mig??? Der Samtidig er der en fade up efekt på når billederne bliver hentet ind i div´en men det fungere.

Div´en ser sådan ud:
<div id='fotoholder'>
<img src='STIEN PÅ BILLEDET' alt='Dette er foto 1' id='foto1' />
</div>

JavaS funktionen der gør billedet synlig:

window.onload = function() {initImage()}

function initImage() {
  imageId = 'foto1';
  image = document.getElementById(imageId);
  setOpacity(image, 0);
  image.style.visibility = 'visible';
  fadeIn(imageId,0);
}

MVH
VAT69
PS Ser nok ikke besvarelserne før i morgen :)
Avatar billede roenving Novice
16. april 2005 - 12:32 #1
F.eks. sådan:

function initImage(sti) {
  imageId = 'foto1';
  image = document.getElementById(imageId);
  if(sti)
    image.src = sti;
  setOpacity(image, 0);
  image.style.visibility = 'visible';
  fadeIn(imageId,0);
}

-- skal du bare kalde med stien som argument, f.eks.

<img src="..." onclick="initImage(this.src);">
Avatar billede vat69 Nybegynder
17. april 2005 - 11:34 #2
Hej roenving.

Din kode virker men de billeder man skal kune klikke på er små billeder. Det billede der skal komme frem i div´en er en større udgave af jeg har dog løst problemet ved at skrive sådan:

onclick="initImage(foto1.src='STIEN PÅ DET STORE BILLEDE DER SKAL HENTES');"

Det virker i IE og Firefox.
Jeg går ud fra det er "lovlig JavaS." jeg har lavet (er ikke inde i JavaS. regler)?

Og et andet spørgsmål er, hvad er forskellen at skrive onclik efekten inde i img tag´et i forhold til <a> tag´et? Der er vel ingen??

Men ellers smid et svar og du får dine point. Og mange tak for hjælpen, det var super! :)
Avatar billede roenving Novice
19. april 2005 - 04:47 #3
Du skriver vel

onclick="initImage('STIEN PÅ DET STORE BILLEDE DER SKAL HENTES');" ?o]

-- forskellen på at bruge onclick på et a-tag eller et andet tag er, at a-tags altid har den der pege-cursor, som man ved udløser et-eller-andet, på andre tags skal den sættes specielt, f.eks. ved at sætte style="cursor:pointer;" på tagget ...

-- desuden medtager a-tags en link-border, som man ellers specielt skal fjerne fra billeder ...

-- men link-tags har selvfølgelig den fordel, at hvis man lægger et link i dem, så vil det virke, også i de tilfælde, hvor en-eller-anden administrator misforstået har disablet javascript !-)

-- er dine billeder navngivet logisk (altså ikke af noget serverside ?-)

For så kunne vi vel grave navnet ud af billedets src ...

F.eks.

<img src="mitBillede_thumb.gif" onclick="initImage(this.src);">

function initImage(sti) {
  imageId = 'foto1';
  image = document.getElementById(imageId);
  if(sti){
    image.src = sti.replace(/_thumb\.gif$/,".jpg");//Så vil stien være: mitBillede.jpg !-)
  }
  setOpacity(image, 0);
  image.style.visibility = 'visible';
  fadeIn(imageId,0);
}
Avatar billede roenving Novice
19. april 2005 - 04:48 #4
-- els velbekomme '-)
Avatar billede vat69 Nybegynder
19. april 2005 - 09:58 #5
Hej Roenving

Det virker både ved at skrive
onclick="initImage(foto1.src='STIEN PÅ DET STORE BILLEDE DER SKAL HENTES');"

og

onclick="initImage('STIEN PÅ DET STORE BILLEDE DER SKAL HENTES');"

Men din måde er vel den mere korekte måde at gøre det på? Eller det er måske det samme?
Avatar billede roenving Novice
20. april 2005 - 07:18 #6
Nu har jeg ikke haft tid til hverken at teste eller forfølge lige denne sag, men umiddelbart ser jeg det som en fejl at lave en tildeling i en funktionsparameter, og jeg tvivler stærkt på, at det vil du i særlig mange forskellige browsere ...

-- for hvis det fungerer, forlader det sig på en M$-proprietær måde at adressere elementer på, som bare vil producere fejl i de fleste browsere !-)
Avatar billede vat69 Nybegynder
20. april 2005 - 08:57 #7
Ok og tak for hjælpen, her er point.
Avatar billede roenving Novice
21. april 2005 - 00:08 #8
-- og jeg takker for point ;~}
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