Прямо сейчас, я использую эту функцию для загрузки контента с другой страницы в диалоге пользовательского интерфейса jquery:
function openDialogByUri(div, uri, title, width, height, buttonsArray) {
div.load(uri, function() {
div.dialog({
title: title,
width: width,
height: height,
position: 'middle',
resizable: false,
buttons: buttonsArray
});
});
}
Например, вот так:
$('a.dictionary').click(function() {
openDialogByUri($otherDialogContainer, '/test.php', 'Dialog title', 600, 400,
{
'Close': function() {
$otherDialogContainer.dialog('close');
}
}
);
return false;
});
Проблема в том, что может потребоваться некоторое время, пока содержимое внешней страницы загрузится. Пока этого не произойдет, диалоговое окно не появится и похоже, что с пользователями ничего не происходит.
Как мне изменить эту функцию, чтобы она работала так:
Когда пользователь нажимает на ссылку, вызывающую указанную выше функцию, диалоговое окно открывается немедленно. Внутри диалога есть какая-то панель загрузки или похожее изображение, которое указывает на то, что объект загружается. После загрузки содержимого вставьте его в диалоговое окно.