Как заставить jQGreyScale работать с бесконечной прокруткой Masonry? - PullRequest
0 голосов
/ 07 января 2012

Я работаю над темой блога, и мне нужна помощь.У меня есть два сценария: масонство и оттенки серого.Они оба работают, за исключением случаев, когда бесконечный скроллинг (часть каменной кладки) добавляет новые фотографии на страницу, новые фотографии не находятся в режиме оттенков серого.Вы можете увидеть это в прямом эфире на http://jamestestblog4.tumblr.com. Вот код, который я использую.Если кто-то может помочь, это было бы здорово.Я новичок в JQuery и не знаю, что делать.

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script src="http://www.pryde-design.co.uk/projects/jQGreyScale/greyScale.js"></script>
<script>
      $(function() {
        $('.greyScale').hide().fadeIn(1000);
      });
      $(window).load(function () { 
        $('.greyScale').greyScale({
          fadeTime: 500
        });
    });
</script>

{block:IndexPage}
<script src="http://masonry.desandro.com/jquery.masonry.min.js"></script>
<script src="http://masonry.desandro.com/js/jquery.infinitescroll.min.js"></script>
<script>
$(function(){
var $container = $('#content');
$container.imagesLoaded(function(){
$container.masonry({
itemSelector: '#entry',
isAnimated : true
});
});

$container.infinitescroll({
navSelector : '#page-nav',
nextSelector : '#page-nav a',
itemSelector : '#entry',
loadingImg : "http://static.tumblr.com/kwz90l7/bIdlst7ub/transparent.png",
loadingText : " ",
donetext : " ",
isAnimated : true
},

function( newElements ) {
var $newElems = $( newElements ).css({ opacity: 0 });
$newElems.imagesLoaded(function(){
$newElems.animate({ opacity: 1 });
$container.masonry( 'appended', $newElems, true ); 
});
}
);

});
</script>
{/block:IndexPage}

1 Ответ

2 голосов
/ 07 января 2012

Я думаю, вы должны изменить свой newElements обратный вызов на что-то вроде этого:

function( newElements ) {
    var $newElems = $( newElements ).css({ opacity: 0 });
    $newElems.imagesLoaded(function() {
        $newElems.animate({ opacity: 1 });
        $container.masonry( 'appended', $newElems, true ); 
        $newElems.greyScale({
            fadeTime: 500
        });
    });
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...