Hallå
I byggandet av min sida har jag använt mig av liknande:
function minFunction(ditt,datt){
...
kod
...
return arrayMedData;
}
var x=minFunction(ditt,datt);
for(i=0;i<x.length;i++){
alert(x[i]);
}
variabeln x har fungerat exakt som en array vilket jag därför antagit att det varit. När jag körde koden i IE7 så lärde jag mig att så inte var fallet utan att x är ett object (wtf!). Nu lyckas jag inte få fram arrayMedData från x överhuvud taget i IE6 ocg IE7.
Jag ägnade hela gårdagskvällen och en bra bit in i natten för att läsa på om objects men ärligt talat är det långt över min mentala kapacitet att förstå vad jag läser.
Så, kan jag få fram arrayMedData från x även i gamla versioner av explorer. I åttan fungerar det redan nu, så även i chrome safari opera firefox.
SPiNMedlem sedan mars 20007 896 inlägg Visa hur koden i funktionen 'minFunction' ser ut.
Det _går_ att iterera igenom ett objekt, på liknande sätt som arrayer (och det fungerar på arrayer också);
for (p in yourObject) {
alert(yourObject[p]);
}
Postar all kod jag tror kan vara relevant. H1-elementens class säger vilka artiklar(artikelnummer) som ska sorteras in under vilken H1-rubrik.
<h1 class="001070-001999 001020-001039">Rubrik</h1>
<h1 class="001000-001019">Rubrik</h1>
<h1 class="001040-001069">Rubrik</h1>
function sortProducts(){
var x=document.getElementsByTagName('h1');
for(var i=0;i<x.length;i++){
var range=new extractClasses(x[i]);
for(var ii=0;ii<range.length;ii++){
var fromTo=range[ii].split('-');//fromTo[0]=from, fromTo[1]=to. Later from and to only
var from=parseFloat(fromTo[0]);
var to=parseFloat(fromTo[1]);
moveProductBox(x[i],from,to);
}
}
}
function extractClasses(targ){
//returns an array consisting of all the classes of the target element
if(targ.attributes['class']){
var elementClass=targ.getAttribute('class').split(' ');
return elementClass;
}
}