2017-02-15 2 views
0

кирпичная кладка не работает в моей загрузке больше сообщений. Я пробовал некоторые вроде этого, но он не работает для меня. нагрузка код масонство в первой загрузке и не работаетКаменная кладка не работает при нагрузке больше сообщений

if ($('.more-posts-wrapper .ajax-load-more').length) { 
     $('.more-posts-wrapper').off().on('click', '.ajax-load-more a', function(e) { 
      e.preventDefault(); 

      var parent = $(this).parents('.more-posts-wrapper').attr('id'); 
      parent = '#' + parent; 
      var link = $(this).attr('href'); 

      $(parent+'.more-posts-wrapper').append('<div class="more-posts"></div>'); 
      content.append(html).masonry('appended', elements); 
      $(parent).find('.ajax-load-more').replaceWith('<div class="load-content"><div class="load-circle" data-loader="arrow-circle"></div></div>'); 
      $(parent).find('.more-posts').load(link + ' '+ parent +' .kitten-ajax-wrapper .post-item, '+ parent +' .ajax-load-more', function() { 
      $(parent).find('.more-posts .post-item').hide().detach().appendTo(parent+' .kitten-ajax-wrapper .posts-wrapper').fadeIn(500); 
      $(parent).find('.more-posts .ajax-load-more').detach().appendTo(parent+' .kitten-ajax-wrapper .posts-contnet'); 
      $(parent).find('.more-posts').remove(); 
      $(parent).find('.load-content').remove(); 
      }); 
     }); 
    } 

и мой код HTML

<div id="more-posts-wrapper" class="more-posts-wrapper"> 
    <div class="kitten-ajax-content"> 
     <div class="kitten-ajax-wrapper"> 
      <!--Start Posts Wrapper--> 
      <div class="blog-posts"> 
       <?php get_template_part('loop/post-style/'.$blog_style.''); ?> 
      </div> 
      <!--End Posts Wrapper--> 
      <!--Start pagination Post--> 
      <div class="Read-More ajax-load-more pagination-load-more"> 
       <?php echo get_next_posts_link('<span>Load More</span> <span><i class="fa fa-refresh"></i></span>',100); ?> 
      </div> 
      <!--End pagination Post--> 
     </div> 
    </div> 
</div> 

Кладка код

// Masonry 
jQuery(document).ready(function($){ 
    var $container = $('.masonry-layout'); 
    $container.masonry({ 
     itemSelector: '.post-item', 
     layoutMode: 'masonry', 
     resizesContainer: false, 
     percentPosition: true, 
     isAnimated: true, 
    }); 
}); 

ответ

0

вы должны использовать метод appended с $container. И я не вижу здесь $(".masonry-layout") класс. BTW вы можете использовать плагин imageLoaded, чтобы получить лучший результат. Также у кладки есть утилита reloadItems. 2. Где вы получили content переменная в этой строке content.append(html).masonry('appended', elements);

Смежные вопросы