[thelist] window.name & target="name" issues

Robert Carpenter evolt at thebigcrux.com
Fri Dec 5 16:30:05 CST 2003


Hi all-

I'm having some problems with the window.name property and 
target="name" attribute in Safari and NN7, hoping that someone wiser in 
the ways of the DOM & JS can either point me towards a better or more 
proper way to approach this or confirm that I'm dealing with bugs in 
Netscape 7 & Safari.

I'm trying to spawn a new window from a link, and then load links or 
forms from that new window into the original window, then close the 
spawned window (I understand some folks may have some usability issues 
with this approach, but the clients are being very, uhh, client-like).

Here's some code snippets as they stand now, but I've tried numerous 
other variations as well:

----window 1----
//in the <head>
	<script...>
	window.name = "one";
	function openwin() {
		//I've also tried specifying the actual page, instd of about:blank
		pop=window.open('about:blank','two','height=400,width=250');
		}
	</script>

//in the <body>
	<a href="jstest2.html" target="two" onclick="openwin();">New Window</a>
--------

This seems to work just fine, but the problem comes up when I try to 
load pages into the original page from links or forms in the spawned 
window, and then close the spawned window, like this:

----window 2----
//In the <head> : Close this window after the link/form loads -  
setTimeout() is for Netscape 7

	function closewin() {
	window.focus("one");
	setTimeout('self.close()',500);
	}

//this link/form should load in the original window
	<a href="jstest3.html" target="one" onclick="closewin();return 
true;">Go Back</a>
	<form id="form1" action="jstest3.html" method="get" target="one" 
onsubmit="closewin();return true;">
		<input type="text" value="test" name="test2">
		<input type="submit">
	</form>
---------

All of this seems to work just fine in IE (mac/win), netscape 4.x, but 
fails in NN7 & Safari, albeit differently:

NN7.x: Only works if I include the setTimeout(x,y) as above, and form 
submission fails with the browsers default behavior of showing a 
"non-secure form" warning if not using SSL.

Safari: Just won't load the link into the original window, even though 
it seems to know that it exists (for example, window.opener.name yields 
the proper window name). More frustratingly, Safari *will* open links 
in a name-targeted window, but only if the target window has been 
spawned previously by that window, i.e., it works if I A)spawn a new 
window ("one"), B)click a link in "one" with target="three" (this opens 
new window), and  C)further links in "one" with target="three" will 
work as expected.

Hope all of this makes sense and that I'm giving enough info to work 
with.

TIA!
-Robert-



More information about the thelist mailing list