webForumDet fria alternativet

Dubbla popup-fönster

1 svar · 437 visningar · startad av Aeris130

Aeris130Medlem sedan nov. 20057 inlägg
#1

Jag har stött på ett litet problem som bara dyker upp i IE6, angående ett popup-script jag har på min sida. Det har fungerat som det ska i flera månader (inga ändringar har gjorts till det), men IE6 (inte FF, Opera, IE7 eller någon annan browser) har helt plötsligt börjat krångla.

Scriptet ser ut så här:

<script>
function redirectOutput(myForm) {
var w = window.open('about:blank','Popup_Window','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,copyhistory=no,width=400,height=250');
myForm.target = 'Popup_Window';
return true;
}
</script>

Formuläret som skickar data till ett nytt fönster ser ut så här:

<form action='shop/shop_index.php' method='post' onSubmit='redirectOutput(this)'>
...
</form>

Problemet i IE6 är att scriptet numera öppnar det givna fönstret, men istället för att ladda shop_index.php, så öppnas ännu ett fönster (ett vanligt, som inte justeras av scriptet).

http://www.thescripts.com/forum/thread152115.html

^ Enligt den här tråden ska det bero på följande:

The open() method returns immediately, without waiting for the
windowing system to actually create the window. If that happens
to take a little longer on some machines, the new window won't
exist yet when you submit the form. Since no window exists by
the name "addlookup", a new one is created.

Min fråga är då, går det att modifiera scriptet så att användare med "långsamma" datorer slipper det extra fönstret?

stattinMedlem sedan jan. 2005713 inlägg
#2

en timeout kanske på några hundradelar men det kanske inte är någon garanti för att det ska funka för alla och kanske inte det smartaste sättet heller.

128 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
126 ms — hämta tråd, inlägg och bilagor (db)