Conjunto de Javascript window.name -issue in IE
O Sítio Web A está a abrir o sítio Web B utilizando window.open("Website B", "windowName");
no Sítio Web B Tenho o seguinte código:
<script>
window.name='';
window.location.href = 'Website C';
</script>
no Site C Eu tenho no Firefox e Chrome (todas as versões) window.name
igual a ", mas no IE (versões 9, 10, 11) é igual a 'windowName'.
window.name = ''
Quando eu chegar ao site C. Eu não posso usar o windows.abrir no Site B para abrir o Site C, Eu preciso usar janela.localizacao.
código fonte Adicionado:
Índice.html (Site a)
<!DOCTYPE html>
<html>
<title>Page A</title>
<head>
<script>
function test2(){
window.open("index2.html","Some window name","width=500,height=500");
}
</script>
</head>
<body>
<input type="button" onClick="test2();">
</body>
</html>
[8]}Índice 2.html (Site b)
<!DOCTYPE html>
<html>
<title>Page B</title>
<head>
<script>
document.write("initial window name: [" + window.name + "]<br/><br/>");
window.name=""; //we set it to empty string
document.write("after we set window.name to empty string: [" + window.name + "]"); //all fine in all browsers, shows nothing
document.location= 'index3.html';
</script>
</head>
<body>
</body>
</html>
Índice 3.html (Site C)
<!DOCTYPE html>
<html>
<title>Page C</title>
<head>
<script>
document.write("initial window name: [" + window.name + "]"); //OK in Firefox (shows nothing). Not OK in IE, shows "Some window name"
</script>
</head>
<body>
</body>
</html>
2 answers
De acordo com a documentação MSDN, a propriedade name
pode ser alterada:
Http://msdn.microsoft.com/en-us/library/ie/ms534187%28v=vs.85%29.aspx
Tentei mudar a propriedade name
, e funciona bem na IE9:
Http://jsfiddle.net/Guffa/5cBBy/1/
Eu também tentei mudá-lo para uma corda vazia, e isso funciona:
Então, há provavelmente algo de errado com o teu código.Tive o mesmo problema e descobri que precisas de mudar o nome da janela depois de teres configurado a nova janela.localizacao. Funcionou comigo!