Как в цикле дождаться выполнения функции(клика)?
Добрый день. Имеется скрипт, который запрашивает данные из php, выводит на html страницу 3 кнопкокартинки и по клику на одну из них выдает ссылку на эту картинку.
В одной итерации это срабатывает хорошо. После добавления цикла как и ожидалось цикл проходит весь и выводит кучу картинок, но надо чтобы выдавал по очереди... Тоесть g =3 прогнал, выдал картинки и ждет клика. Клик произошел, плюсует g и возвращается вначало.. Как это сделать? Спасибо заранее!!
var g = 2;
while (g < 4) {
function set_mode_view(element){
$("#test_value").append(element.firstChild.currentSrc);
flag = true;
}
$(document).ready(function(){
$.get("getex.php?", { i: g})
.done(function(data) {
console.log(data);
$.ajax({
type: 'POST',
url: 'im.php',
dataType: 'json',
cache: false,
success: function(result) {
$("#test_value").append('<style>img {height: 100px; width: 100px;}</style><button onclick="set_mode_view(this)"><img src="'+result.url1+'" alt="Кнопка «button»"></button><button onclick="set_mode_view(this)"><img src="'+result.url2+'" alt="Кнопка «button»"></button><button onclick="set_mode_view(this)"><img src="'+result.url3+'" alt="Кнопка «button»"></button>');
},
});
});
});
g++;
}
|
Цитата:
|
Цитата:
|
var g = 2;
while (g < 4) {
это конструкция просто повесит браузер. |
psyapathy,
пусть у вас на севере N изображений, которые нужно получить на клиенте частями по M штук. Для этого достаточно передавать на сервер смещение в массиве изображений, которые нужно получить. При этом если сервер вернул пусто, значит все получено. То есть, сначала параметр запроса равен 1, сервер отдает срез массива (1-1)*M, M, клиент получает, увеличивает параметр запроса на 1, и т.д. Цикл тут совсем не нужен. |
| Часовой пояс GMT +3, время: 14:08. |