webForumDet fria alternativet

stänga popup fönster i IE

JavaScript

6 svar · 585 visningar · startad av stompes

Medlem sedan maj 200757 inlägg
Frågan#1

Finns det något sätt att stänga ett popupfönster genom att clicka utanför det i IE? får det att fungera i Mozilla??

Medlem sedan apr. 2006244 inlägg
#2

<body onblur="window.close()"> borde väl funka?

Medlem sedan maj 200757 inlägg
#3

Har testat, det funkar i mozilla men inte IE

hm.. Kanske gör jag nått galet?

Medlem sedan juni 20014 421 inlägg
#4

provat: self.close() eller top.close?

Medlem sedan maj 200757 inlägg
#5

I sidan som öppnar fönstret:

<SCRIPT>
function popup(hello)
{
var height = 350;
var width = 450;
var left = (screen.availWidth - width)/2;
var top = (screen.availHeight - height)/2;
if (window.showModalDialog)
{
var dialogArguments = new Object();
var _R = window.showModalDialog("popup.html", dialogArguments, "dialogWidth=450px;dialogHeight=350px;scroll=no;status=no;");
if ("undefined" != typeof(_R))
{
SetName(_R.strName);
}
}
else //NS
{
var left = (screen.width-width)/2;
var top = (screen.height-height)/2;
winHandle = window.open("popup.html", ID, "modal,toolbar=false,location=false,directories=false,status=false,menubar=false,scrollbars=yes,resizable=no,left="+left+",top="+top+",width="+width+",height="+height);
winHandle.focus();
}
return false;
}

</SCRIPT>
<a onclick="popup()">underartiklar</a>

och så här ser det ut i popup fönstret:

\</head\>

<BODY onBlur="javascript:window.close();">
<a onclick="javascript:window.close();">Close window</a>

Fönstret blinkar till när jag försöker stänga det i explorer men inget händer.
hm..??

Medlem sedan maj 200757 inlägg
#6

har testat båda men ingen av dem fungerar, kan det vara någon typ av säkerhetsinställning i explorer som gör att det inte fungerar?

Medlem sedan juni 2003771 inlägg
#7

Detta använder jag sedan länge på min sida som kan ses HÄR
Se hur det funkar genom att klicka på länken "Stadsvandring".

Siffrorna i koden nedan står för position x, y samt fönsterstorlek.

<html>
<head>
<script language = javascript>
newWin=null
chkTimer=null
function openWin(url,l,t,w,h){
if(newWin&&newWin.open&&!newWin.closed){
newWin.close()}
newWin=window.open(url,'win1','left='+l+',top='+t+',width='+w+',height='+h+'')
clearTimeout(chkTimer)
return false}
window.onfocus=function(){ // close popup when blurred
clearTimeout(chkTimer)
if(newWin&&newWin.open&&!newWin.closed)
{chkTimer=setTimeout("newWin.close()",1000)}
window.onunload=function(){ //close popup when opener closes
if(newWin&&newWin.open&&!newWin.closed){
newWin.close()} } }
</script>
</head>
<body>
<a href="popup1.htm" onclick="return openWin(this.href,'150','60','600','550')">Popup 1</a>
<br><br>
<a href="popup2.htm" onclick="return openWin(this.href,'300','200','450','400')">Popup 2</a>
<br><br>
<a href="popup3.htm" onclick="return openWin(this.href,'200','100','200','500')">Popup 3</a>
</body>
</html>

257 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)