PJAX加载后无法运行脚本

时间:2013-09-27 19:51:37

标签: javascript php jquery html pjax

我正在使用PJAX进行项目。 我有一个名为#icerikAlani的容器,用PJAX加载其内容。 这是基本布局:

<div class="container" id="icerikAlani" data-pjax-container>   
    <!-- NIVO SLIDER --> 
    <div class="row">
        <div class="col-md-8">
            <div id="slider" class="nivoSlider"> SLIDER CONTENT HERE... </div>
        </div>
    </div>
    <!-- SCROLLING LOGOS --> 
    <div class="row">
         <div class="col-md-12">
            <div id="logoParade"> SCROLLING LOGOS HERE... </div>
         </div>
    </div>
</div>

此容器中还有两个其他脚本标记,用于Nivo Slider和Smooth Div Scroller插件。 问题是,当我导航到页面并返回主页时,脚本标记停止工作。

我试图通过使用pjax:end语句来解决这个问题,但我无法使其工作,然后我尝试了pjax:成功如下,但仍然没有运气。 (正如我在这里读到的那样:Where to put the page-initialize javascript when using pjax?

有没有办法在不重新加载页面的情况下使用这些脚本?

这是关于PJAX和Smooth Div Scroller脚本的脚本:

<script type="text/javascript">
    $(document).pjax('a','[data-pjax-container]', { fragment: "#icerikAlani" } );
    //THIS IS HOW I ACTIVATE PJAX

    $(document).on('pjax:beforeSend', function() {
    $('#icerikAlani').fadeOut(50);
    }); 
    //WORKS...

    $(document).on('pjax:end', function() {
    $('#icerikAlani').fadeIn(400);
    });
    //WORKS...

    $(document).on('ready pjax:success', function() {
      $("#logoParade").smoothDivScroll({ 
                     autoScrollingMode: "always", 
                     autoScrollingDirection: "endlessLoopRight", 
                     autoScrollingStep: 1, 
                     autoScrollingInterval: 25 
             });
   //FAILS...
});
</script>

您可以查看完整代码here

因为我对javascript没有经验,所以在完成项目之前,这个问题就像一堵墙。希望找到适用于滑块和滚动条的东西。

1 个答案:

答案 0 :(得分:0)

您的脚本可能会导致错误。 试试Firefox和Firebug,看看你是否找到了......