在AJAX后加载后重新初始化JScrollPane

时间:2014-08-19 19:57:08

标签: javascript jquery ajax wordpress jscrollpane

我正在加载div #reviewspostscont中的帖子,AJAX代码正常工作,当滚动条结束时会加载帖子,但我无法重新初始化JScrollPane来显示它们。 我试过不同的代码,但没有任何作用,这是我到目前为止。 提前谢谢,马特

jQuery(document).ready(function($) {

$(function()
{
$('#reviewspostscont').each(
    function()
    {


        $(this).jScrollPane(
            {
                horizontalDragMaxWidth : 100
            }
        );
        var api = $(this).data('jsp');
        var throttleTimeout;
        $(window).bind(
            'resize',
            function()
            {
                if (!throttleTimeout) {
                    throttleTimeout = setTimeout(
                        function()
                        {
                            api.reinitialise();
                            throttleTimeout = null;
                        },
                        50
                    );
                }
            }
        );

        $(this).bind(
            'jsp-scroll-x',
            function(event, scrollPositionX, isAtLeft, isAtRight)
            {
            var count = 2;
                if (isAtRight == true) {
        loadArticle(count);
        var api = $(this).data('jsp');
        api.reinitialise();
        count++;
    }


            }
        );

    }
  )




  });


  function loadArticle(pageNumber){    
                $.ajax({
                    url: "<?php bloginfo('wpurl') ?>/wp-admin/admin-ajax.php",
                    type:'POST',
                    data: "action=infinite_scroll&page_no="+ pageNumber + '&loop_file=loop-reviews', 
                    success: function(html){
                        $("#reviewspostscont").append(html);   // This will be the div where our content will be loaded
                    }
                });

            return false;
        }

});

1 个答案:

答案 0 :(得分:0)

您可以使用autoReinitialiseHere's a demo显示了一个类似的例子。 And another oneAnd another