webForumDet fria alternativet
Logga in / Bli medlem

loop som kracshar webbläsaren

JavaScript

4 svar · 284 visningar · startad av mikkeX

Medlem sedan aug. 2002477 inlägg
Trådstart#1

Varför loopar följande skript i oändlighet:

<script type="text/javascript">
 if(location.search.substring(1))
 {
 var sida =  location.search.substring(1);
 }
else
{
var sida = 'annan.htm';
}
document.write('<iframe src="' + sida + '" style="border: 1px solid black;width: 300px;"></iframe>');

</script>

Jag vill att det ska skriva ut resultatet en gång till sidan nu skrivs det om och om igen... jag har stirrat mig blind - var tror ni?

Medlem sedan juni 200032 967 inlägg
#2

Det ser ut att funka alldeles utmärkt i min IE6, i alla fall, och jag ser inget i koden som skulle vara bråkigt.

Nu är iofs jag inte känd som javascript-kungen, men ändå. ;)

Mvh,

Medlem sedan aug. 2002477 inlägg
#3

Glömde koden som den är beroende av (skickas från ett annat dokument):

<script type="text/javascript">
if (parent.location.href == self.location.href)
var filnamn;
filnamn = location.href;
filnamn=filnamn.substring(filnamn.lastIndexOf('/'));

filnamn = filnamn.replace(/\//g,''); // tar bort '/'-tecknet från filnamnet
window.location.href = 'huvudsida.htm?' + filnamn; //huvudsida.htm är sidan som innehåller iframen
</script>

Ovanstående kod skickas alltså en variabel till skriptet som jag tidigare postade.

Medlem sedan sep. 20021 655 inlägg
#4

Jag förstår inte följande:

if (parent.location.href == self.location.href)
var filnamn;

Endast om parent==self så deklareras variabeln filnamn. Den kommer att få ett värde i vilket fall som helst. Har du måhända glömt några måsparenteser?

När man bara skickar med ett argument till substring(), är det samma sak som att sätta start till 0? I så fall verkar det som att filnamn egentligen blir mappen.

Jag lyckas inte få fram någon loop i vilket fall som helst.

Medlem sedan aug. 2002477 inlägg
#5

Japp jag hade glömt måsparenteserna... jag stirrade mig blind på det första skriptet som jag skickade...

Loopen försvann plötsligt här... så jag antar att det var något annat som jag hade gjort som ställde till det.

Tack i alla fall.

263 ms totalt · 4 externa anrop · v20260731065814-full.51f67c91
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
134 ms — hämta tråd, inlägg och bilagor (db)
120 ms — ändringar (db)