XMLHttpRequest в цикле
как заставить работать?
var array = ["http://site1.com/", "http://site2.com/", "http://site3.com/" ]; for (var i = 0; i < array.length; i++) { var xhr = new XMLHttpRequest(); xhr.open("GET", array[i], true); xhr.onreadystatechange = function() { if (xhr.readyState == 4) { console.log(xhr.responseText); } } xhr.send(); } Работает только с последним url-ом |
for (var i = 0; i < array.length; i++) { (function() { var xhr = new XMLHttpRequest(); xhr.open("GET", array[i], true); xhr.onreadystatechange = function() { if (xhr.readyState == 4) { console.log(xhr.responseText); } } xhr.send(); })(); } |
var array = ["http://site1.com/", "http://site2.com/", "http://site3.com/" ]; for (var i = 0; i < array.length; i++) { var xhr = new XMLHttpRequest(); xhr.open("GET", array[i], true); xhr.onreadystatechange = function() { if (this.readyState == 4) { console.log(this.responseText); } } xhr.send(); } |
Не жалко пользователей? А то вот так вот и уходит трафик не понять куда.
|
Цитата:
Конечно, с некоторыми говносайтами проблемы. Некоторые даже контент бля не отображают (как они вообще из поисковой выдачи не вылетели) без JS. Или ссылки не работают. Но как правило такие кривые сайты не несут ничего уникального, поэтому достаточно просто закрыть сайт и открыть другой, чтобы решить проблему. |
Цитата:
|
Цитата:
В мой дом проводной инет тянуть тупо отказываются. Приходится юзать мобильный, с ограниченным объемом трафика. |
Цитата:
Цитата:
|
всё круто, но есть одно но.
что будет если количество запросов превысит количество допустимых браузером потоков? будут прибивать ранее посленные запросы, хоть и ответ на них не пришел, ради открытия нового. т.е если колво допустимое в браузере 8, то при посыле 10 запросов таким образом - 2 потеряются по этому цепочка(допустимое колво потоков) - пришел ответ - посылается след запрос. |
Цитата:
|
Часовой пояс GMT +3, время: 11:35. |