Я использую JQuery и что я хочу произойти.
Отделение постепенно исчезает с помощью команды постепенного исчезновения. Это затем загружает содержание из URL с помощью команды загрузки. Затем, после того как содержание загрузилось, оно отходит назад в использовании команды постепенного появления.
Код, который я имею:
$("#myDiv").fadeOut().load('www.someurl.com').fadeIn()
Однако это не работает. Это вид вспышек затем загружает затем загрузки в. Я думаю, что проблема состоит в том, что исчезновение происходит, прежде чем загрузка завершена.
Что мне делать?
Спасибо
вы можете использовать load() функцию обратного вызова вот так:
$("#myDiv").fadeOut().load("www.someurl.com", function(response, status, xhr) {
$(this).fadeIn();
});
возможно, вы захотите использовать статус вызова load(), чтобы узнать, все ли было выполнено правильно.
$("#myDiv").fadeOut().load("www.someurl.com", function(response, status, xhr) {
if (status == "error") {
// handle error
}
else
{
$(this).fadeIn();
}
});
$("#myDiv").fadeOut(1000, function () {
$("#myDiv").load("www.someurl.com", {limit: 25}, function(){
$("#myDiv").fadeIn();
});
});
Предел указывает, сколько времени нужно ждать ответа в вызове загрузки
Используйте success
обратный вызов для .load()
, например так:
$("#myDiv").fadeOut().load('www.someurl.com', function() {
$(this).fadeIn();
});
вам нужно сделать затухание при загрузке функция обратного вызова из-за асинхронного характера AJAX.