Использовать загрузку jQuery с техникой fadeIn - PullRequest
2 голосов
/ 31 мая 2011

Я пытаюсь загрузить html-страницу в элемент, используя функцию загрузки jQuery.Проблема в том, что при загрузке нового контента у меня появляется небольшое мерцание.

Демонстрационную страницу можно посмотреть здесь - http://wwwdev.legendboats.com (нажмите на нижнюю лодку, чтобы загрузить новый контент в основную область)

Вот код, который я сейчас используюиспользуя.

$("#mycarousel a").click(function() {

     $("#home_box div").fadeOut().load($(this).attr("href") + ' #featured_content', function(response, status, xhr) {
        $(this).fadeIn();
    });

    return false;
});

Ответы [ 2 ]

2 голосов
/ 31 мая 2011

Flickr происходит только тогда, когда контент загружается из кэша, потому что метод load () исчезает в новом контенте до того, как старый контент исчезает, попробуйте загрузить контент в функцию обратного вызова исчезновения.

$("#mycarousel a").click(function() 
{
     $("#home_box div").fadeOut(function() 
     {
         $(this).load($(this).attr("href") + ' #featured_content', function(response, status, xhr) 
         {
             $(this).fadeIn();
         }
     });

    return false;
});
0 голосов
/ 31 мая 2011

Попробуйте отложить загрузку до тех пор, пока она не исчезнет:

$("#mycarousel a").click(function() {
  var url = $(this).attr('href');
  $("#home_box div").fadeOut('slow', function() {
    $(this).load(url + ' #featured_content', function(response, status, xhr) {
      $(this).fadeIn();
    });
  });
});

edit - исправлена ​​проблема с "этой" путаницей

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...