Abrir URL en una nueva ventana con JavaScript

130

Estoy haciendo un "botón de compartir" para compartir la página actual. Me gustaría tomar la URL de la página actual y abrirla en una nueva ventana. Tengo la parte de la URL actual funcionando, pero parece que la siguiente parte no funciona.

Estoy luchando con la sintaxis. Me gustaría especificar el nuevo tamaño de ventana para width=520, height=570.

Algo como:

<a target="_blank"
   href="https://www.linkedin.com/cws/share?mini=true&amp;url=[sub]" 
   onclick="this.href = this.href.replace('[sub]',window.location)">
    LinkedIn
</a>

¿Algunas ideas?

Mark Mitchell
fuente

Respuestas:

218

Uso window.open():

<a onclick="window.open(document.URL, '_blank', 'location=yes,height=570,width=520,scrollbars=yes,status=yes');">
  Share Page
</a>

Esto creará un enlace titulado Share Pageque abre la url actual en una nueva ventana con una altura de 570 y un ancho de 520.

citruspi
fuente
cómo configurar la altura y el ancho de la ventana a cero, si configuro a cero se muestra a pantalla completa
Akshatha Srinivas
¿Cómo lo abrimos como una ventana normal en lugar de una ventana emergente? porque no se puede abrir una nueva pestaña
Ashok kumar Ganesan
@AkshathaSrinivas la altura mínima es de 100
Oscar Acevedo
56

¿Solo usa la window.open()función? El tercer parámetro le permite especificar el tamaño de la ventana.

Ejemplo

var strWindowFeatures = "location=yes,height=570,width=520,scrollbars=yes,status=yes";
var URL = "https://www.linkedin.com/cws/share?mini=true&amp;url=" + location.href;
var win = window.open(URL, "_blank", strWindowFeatures);
Shiplu Mokaddim
fuente
shiplu.mokadd.im Eso parece ser lo que necesito, pero no estoy seguro de a dónde va.
Mark Mitchell
2
@ MarkMitchell Si no le importa la codificación de estándares, en el onclickatributo. Una opción un poco mejor es crear una función a la que llame desde onclick. Usando getElementByIdy addEventListeneraún está más limpio. Usar jQuery para obtener una sintaxis más corta (y algunas otras características + toneladas de complementos) también es muy popular.
John Dvorak
¿Cómo es ese el cuarto parámetro? A mí me parece el tercero. ¿Me estoy perdiendo de algo?
CoderDennis
@CoderDennis Buena captura. Arreglado.
Shiplu Mokaddim
hola, ¿cómo puedo activar el evento de cierre de ventana?
Dilakshan Sooriyanathan
2

No confunda, si no le da ninguna strWindowFeatures, se abrirá en una nueva pestaña.

window.open('https://play.google.com/store/apps/details?id=com.drishya');
Ankit Kumar Rajpoot
fuente