javascript - window.open no funciona en IE
jquery html (4)
Aparentemente, esta llamada a window.open
no es válida en Internet Explorer. El código Javascript de mi sitio no se está ejecutando, supongo que se debe a ese error.
La línea en la que me dice que está el error, es la llamada a window.open, al parecer, un argumento no es válido allí.
$(''.objeto'').click(
function() {
var center = ''height=380,width=900,top=''+((screen.width - 900)/2)+'',left=''+((screen.height - 380)/2);
var address = $(this).attr(''id'');
window.open (address,''Ver articulo'', config=center);
}
);
El sitio funciona bien tanto en Google Chrome como en Firefox.
En IE, no puede tener espacios en su segunda variable (el nombre de la nueva ventana).
Tratar:
window.open (address,''Ver_articulo'', config=center);
No estoy seguro de qué es la configuración, solo necesitas:
window.open (address,''VerArticulo'', center);
Sin embargo, tenga en cuenta que parece que su atributo de id
no es válido para obtener el efecto aquí, es probable que desee utilizar algo diferente, por ejemplo, data-href="urlHere"
en el elemento, si no es un ancla ya.
También vale la pena repetir que IE9 (y posiblemente a continuación) no le gustan los guiones (''-'') en el nombre de la ventana (segundo parámetro).
Sé que uno de los comentarios mencionó esto, pero está un poco enterrado, y es un consejo que solo resolvió un problema para mí.
incluso si es una respuesta tardía para OP, pero para alguien más que se encuentre con esta publicación podría ayudar:
Tuvo exactamente el mismo problema que OP después de intentar usar el método "window.open". Resulta que Chrome está bien con la etiqueta href original con la URL en la que IE parece confundirse con eso. Después de quitar href del enlace trabajó en el lugar.
MUESTRA DE CODIGO:
$(document).ready(function ()
{
$(''a[rel^="external"]'').each(function ()
{
var externalLink = $(this);
var externalLinkValue = externalLink.attr("href");
externalLink.unbind(''click'');
externalLink.removeAttr("href");
externalLink.click(function (event)
{
event.preventDefault();
followExtrenalLink = window.open(externalLinkValue,''_blank'');
});
externalLink.hover(function ()
{
externalLink.css(''cursor'', ''pointer'');
});
});