window igen...

JavaScript

3 svar · 228 visningar · startad av Engine^

Medlem sedan dec. 20003 887 inlägg
Trådstart#1

Jag har ett fönster X öppnat med window.open() i vilket jag kan öppna ett annat fönster Y mha window.open(). Nu är det så att jag har ett liten problem... när jag stänger fönster Y, så kan jag inte öppna det igen från fönster X... varför i hela friden inte då??? När jag klickar på ikonen, som öppnar fönster Y, så händer helt enkelt ingenting...
Jag funderade på att klistra in scripten oxå, men jag hoppas att det är något fundamentalt som jag missat.

Medlem sedan jan. 200189 inlägg
#2

Tror att focus kan hjälpa.

<a href="#" onclick="window.open('page.html',
'Popup', 'width=600,height=500').focus()">länk</a>

Medlem sedan dec. 20003 887 inlägg
#3

Njae... problemet ligger i att det inte öppnas något fönster alls.

Just ja... ni kanske blir hjälpt av lite script-kod...

var objNewWin=null;

function openWindow(strURL, strWindowName, intXPos, intYPos, intWidth, intHeight, strFeaturesSent)
{
	var strAvailFeatures = new Array("alwaysLowered","alwaysRaised","dependent","directories","hotkeys","location","menubar","resizable","scrollbars","status","titlebar","toolbar","z-lock","channelmode","fullscr  een");
	var strFeatures = new String();
	
	strFeatures = 'height='+intHeight+',width='+intWidth+',screenX='+intXPos+',left='+intXPos+',screenY='+intYPos+',top='+intYPos;
	
	for(x = 0; i < strFeaturesSent.length;x++)	
	{
		if(strFeaturesSent.charAt(x) == 1)
			strFeatures += ',' + strAvailFeatures[x] + '=yes';
		else
			strFeatures += ',' + strAvailFeatures[x] + '=no';
	}
	objNewWin = window.open(strURL,strWindowName,strFeatures);
	return objNewWin;
}
	
function winOutputLoc(strURL)
{
	if(objNewWin)
	{
		var s = new String(objNewWin.location);
		if(s.substring(s.lastIndexOf('/')+1,s.length) == strURL)
			objNewWin.focus();
		else
			objNewWin.location.href = strURL;
	}
	if(objNewWin==null)
		objNewWin = openWindow('../proj/'+strURL,'winOutput',150,30,450,550,'001');
}
Medlem sedan dec. 20003 887 inlägg
#4

Löste det...

ändrade en if-sats till

if(objNewWin && !objNewWin.closed)

Det borde jag ha tänkt på tidigare, men det är inte alltid man har huvet på en pinne... ;)

338 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
186 ms — deklarationer (db)
0 ms — hämta statistik (cache)
149 ms — hämta tråd, inlägg och bilagor (db)
180 ms — ändringar (db)