[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Ответ о формировании изображения
Kusss
Я сохраняю скрин области при помощи convas.
И мне нужно узнать создалась картинка или нет.
То есть нужно в течении 5 секунд делать запрос по 0.5 секунде.
Накатал тут функции, но они не работают как нужно. Подскажите как исправить
function view_img_saveA(img_name){
for (var i = 0; i < 11; i++) {
window.setTimeout(view_img_saveB(img_name,i),500);
}
}


function view_img_saveB(img_name,i) {
$.ajax({ url: 'save/'+img_name,
complete: function(xhr, textStatus) {
if (xhr.status == 200) {
$('.result').html(i+' Сформировано');
return false;
}
}
}
);
}
Kusss
Получилась вот такая конструкция
function view_img_save(img_name) {
var i = 1;
setInterval( function() {
if (i == 0)
return false;
$.post('/cart_form/', { 'img_save': img_name})
.
done ( function(data){
if (data == 200) {
$('.result').html(' Сформировано ');
i = 0;
}
}
)
.
fail( function(){
$('.result').html('Ошибка в работе скрипта');
});
i++;
},1000);
}

if (isset($_POST['img_save'])){
if (file_exists('save/'.$_POST['img_save'])) {
echo 200;
} else {
echo 400;
}
die();
}
killer8080
у тебя же картинка аяксом отправляется на сервер? Почему бы не определять создание файла из ответа того же аякс запроса?
Kusss
...
var session_id = getPHPSessId();
var img_name = session_id+'_'+parseInt(new Date().getTime()/1000);

html2canvas($('#save_block')[0],{
onrendered: function(canvas){
document.body.appendChild(canvas);
var canvas = $('canvas')[0];
var data = canvas.toDataURL('image/png').replace(/data:image\/png;base64,/, '');
$('canvas').remove();
$.post('/m_form/',{'save':data, 'img_name' : img_name});
}
}
);
...

вот как-то так отправляю
killer8080
var session_id = getPHPSessId();
var img_name = session_id+'_'+parseInt(new Date().getTime()/1000);

html2canvas($('#save_block')[0],{
onrendered: function(canvas){
document.body.appendChild(canvas);
var canvas = $('canvas')[0];
var data = canvas.toDataURL('image/png').replace(/data:image\/png;base64,/, '');
$('canvas').remove();
$.post('/m_form/',{'save':data, 'img_name' : img_name}, function(data) {
alert('картинка загружена, ответ сервера' + data);
});
}
}
);
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.