EDITAR:
Aprendí que usar otro valor que _blank
NO funciona en navegadores móviles para abrir nuevas ventanas / pestañas.
Por ejemplo, si necesita abrir una nueva ventana / pestaña:
Esto funciona en todos los navegadores, incluso navegadores móviles:
target="_blank"
.Esto no funciona en los navegadores móviles, pero funciona en los navegadores de escritorio:
target="new"
.
-
Aunque tengo este funcionando, no estoy seguro de si hay una mejor manera de hacerlo, o si la forma en que lo obtuve es la única o correcta.
Básicamente, lo que estoy haciendo es reemplazar todos los valores de atributo target="_new"
o , de esta manera solo se abre una nueva ventana y en ella se abrirán todas las demás ventanas nuevas para no abrumar al usuario con múltiples ventanas.target="_blank"
target="nw"
También estoy agregando un atributo "Se abre en una nueva ventana " title=""
.
Entonces, la solución que creé es esta:
$("a[target='_blank'], a[target='_new']").attr('target','nw').attr('title','Opens in a new window');
Note los dos .attr();
métodos.
¿Es esta la forma correcta de agregar dos atributos a un elemento?
Lo intenté .attr('target','nw','title','Opens in a new window')
pero no funcionó.
La razón por la que pregunto es por el principio DYR (Don't Repeat Yourself), así que si puedo mejorar el código que tengo, genial, si no, entonces es lo que es.
Gracias.
.attr('a,b','value')
que no funcione. Yo también me decidí.attr('a',1).attr('b',1)
. Sin embargo, ser menos dependiente de las nuevas ventanas podría ser otro enfoque, en su caso, @ricardozea: P