Tengo este breve script para abrir URL:
var x = document.querySelectorAll("a.Mylinks"); var myarray = []; for (var i = 0; i < x.length; i++) { var link = x[i].href; myarray.push(link); } for (var i = 0; i < myarray.length; i++) { window.open(myarray[i], "_blank"); }Array responde con las URL correctas, la primera URL se abre y eso es todo, el bucle se detiene. ¿Alguna idea de por qué sucede esto y cómo se puede solucionar? Cualquier enlace o información adicional sería útil.
Gracias por adelantado.
El problema al que se enfrenta es que el navegador que está utilizando bloquea la apertura de demasiadas pestañas al mismo tiempo. Intente deshabilitar ese bloqueo, generalmente puede encontrar el botón necesario para eso en la barra de direcciones.
**Note Browser can block as opening of too much tabs at the same time.** var x = document.querySelectorAll("a.Mylinks"); var myarray = []; for (var i = 0; i < x.length; i++) { var link = x[i].href; window.open(x[i].href,Math.floor(Math.random() * 80000)); } <a class='Mylinks' href='https://google.com'></a> <a class='Mylinks' href='https://stackoverflow.com'></a> <a class='Mylinks' href='https://nodejs.org'></a>Simplemente cambie el nombre del objetivo de _blank a una serie aleatoria como "_blank" + i , luego verifíquelo.
for (var i = 0; i < myarray.length; i++) { window.open(link, '_blank' + i); }