Tengo un controlador de clic para un enlace específico, dentro del cual quiero hacer algo similar a lo siguiente:
window.location = url
Sin embargo, necesito esto para abrir la URL en una nueva ventana, ¿cómo hago esto?
javascript
jquery
Chris
fuente
fuente
Aquí se explica cómo forzar el objetivo dentro de un controlador de clic:
fuente
$(this).attr('target', '_blank');
podría cambiarse athis.target = "_blank";
Además, si los enlaces de anclaje en la página se pueden modificar para tenerrel="external"
atributos, entonces podría crear un controlador de clic global para la página con el selector jQuery ena[rel="external"]
lugar de tener un haga clic en el controlador por enlace seleccionado cona#link_id
necesitarás usar
window.open(url);
referencias:
http://www.htmlcodetutorial.com/linking/linking_famsupp_120.html
http://www.w3schools.com/jsref/met_win_open.asp
fuente
También puede usar el método jquery prop () para esto.
fuente
Acabo de encontrar una solución interesante a este problema. Estaba creando intervalos que contienen información basada en el retorno de un servicio web. Pensé en intentar poner un enlace alrededor del tramo para que si hacía clic en él, la "a" capturara el clic.
Pero estaba tratando de capturar el clic con el intervalo ... así que pensé por qué no hacer esto cuando creé el intervalo.
Luego vinculé un controlador de clic al intervalo que creó un enlace basado en el atributo 'data-href':
Esto me permitió hacer clic con éxito en un intervalo y abrir una nueva ventana con una URL adecuada.
fuente
¿Qué pasa con
<a href="myurl.html" target="_blank">My Link</a>
? No se necesita Javascript ...fuente
esta solución también consideró el caso de que la URL esté vacía y deshabilite (gris) el enlace vacío.
fuente
Tenga en cuenta si desea ejecutar solicitudes AJAX dentro de la función del controlador de eventos para el evento de clic. Por alguna razón, Chrome (y tal vez otros navegadores) no abrirá una nueva pestaña / ventana.
fuente
Esta no es una solución muy buena pero funciona:
CSS:
HTML:
Javascript:
Ejemplo en vivo: http://jsfiddle.net/7eRLb/
fuente
Microsoft IE no admite un nombre como segundo argumento.
El problema es
window name
. Esto funcionará:Microsoft solo permite los siguientes argumentos, si usa ese argumento en absoluto:
Consulte este sitio de Microsoft
fuente