Saltar al contenido

Window.open con ‘noopener’ abre una nueva ventana en lugar de una nueva pestaña

Nuestros mejores programadores agotaron sus reservas de café, buscando a tiempo completo por la resolución, hasta que Alexis halló la solución en GitHub así que en este momento la compartimos contigo.

Solución:

Otro enfoque que resolverá esto en una línea es acceder directamente a la propiedad del abridor y establecerlo en null aprovechar el hecho de que window.open() devuelve un Window objeto. Esto funcionará en todos los navegadores para abrir una nueva pestaña con un null window.opener.

window.open(url, '_blank').opener = null;

Honestamente, creo que su código está bien, pero puede probar una implementación diferente:

var yourWindow = window.open();
yourWindow.opener = null;
yourWindow.location = "http://someurl.here";
yourWindow.target = "_blank";

https://mathiasbynens.github.io/rel-noopener/

const anchor = document.createElement('a');

Object.assign(anchor, 
  target: '_blank',
  href: 'http://google.com',
  rel: 'noopener noreferrer'
)
.click()

Este es el método que se siente un poco más limpio. Crea una etiqueta de anclaje y hace clic en ella, tenemos que usar esta solución como preferencia del usuario.

Comentarios y valoraciones

Si te gusta la informática, tienes el poder dejar un tutorial acerca de qué te ha parecido esta noticia.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *