Avatar billede withli Nybegynder
19. december 2003 - 08:21 Der er 7 kommentarer og
1 løsning

Kan ikke kalde billed source via document.images[1].src

Hejsa allesammen.

Jeg har et mindre problem.

Jeg kan af en eller anden bizar grund ikke få lov til at kalde billed sourcen frem.

Min kode ser således ud.


if (window.parent.frames[0].location.href == "http://www.videomarathon.dk/testpage/admin/admin_Nyhedsbrev_search_main.asp")
{
  document.images[1].src = "some.jpg"
   
}

// Som er den som jeg ikke kan få til at virke

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}
function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments;
  document.MM_sr=new Array;
  for(i=0;i<(a.length-2);i+=3)
  if ((x=MM_findObj(a[i]))!=null)
  {
      document.MM_sr[j++]=x;
      if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];
  }
 
}
function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
  var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
  if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}


//og så alt det som macromedia fireworks har smidt oven i.

Min intention er at når den ovenstående side skifter så skal menuen i denne frame ændres til at afspejle det ved at udskifte en ikon på et af billederne.
Avatar billede mm12010 Nybegynder
19. december 2003 - 10:19 #1
document.images['menupic'].src = "some.jpg"

<img src="fil.jpg" name="menupic">
Avatar billede mm12010 Nybegynder
19. december 2003 - 11:02 #2
eller:

document.getElementById('menupic').src = "some.jpg"

<img src="fil.jpg" id="menupic">
Avatar billede roenving Novice
19. december 2003 - 11:09 #3
Måske får du fejl, fordi du kun har eet billede, for det første billede på siden har index 0 !-)

I javascript er de fleste index m.m. 0-baseret, så det skal man være opmærksom på, f.eks. kan et array svare 2 medlemmer (array.length), som så vil haves indices på [0] og [1] ...
Avatar billede withli Nybegynder
19. december 2003 - 11:24 #4
Nu bliver det rigtigt skummelt.

Jeg tænkte at jeg lige ville se hvor mange billeder som den havde i sit array, og det får jeg søreme til 0

Jeg henter den ud ved hjælp af en alert, hmmm lader til at der er noget det går galt under opbyggelsen af siden.

Jeg har ca 10 billeder på skærmen.
Avatar billede withli Nybegynder
19. december 2003 - 11:38 #5
He He jeg har selv fundet ud af det, min fejl, eller rettere min browsers fejl, eller rettere min popupkillers fejl.

Men tak for hjælpen.
Avatar billede roenving Novice
19. december 2003 - 11:52 #6
-- og du skal selvfølgelig huske, at det er halsløs gerning at forsøge at få fat i noget element, før det er initialiseret ...

Derfor vil jeg som hovedregel anbefale, at man først begynder at ændre på elementers egenskaber og indhold onload på body-tagget !-)
Avatar billede withli Nybegynder
19. december 2003 - 11:54 #7
Jep Jep. jeg tror nok at jeg mangler at give dig nogle point for dine gode svar, isærdeleshed det med arrayet som fik mig til at tænke over hvor mange der egentlig var i arrayet.
Avatar billede withli Nybegynder
12. februar 2004 - 16:46 #8
Oprydningstid.
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