解决pjax加载页面导致js插件失效

由 Jefsky 发布于 2024-01-04

因为pjax只在第一次加载的时候把js都加载,所以之后页面载入的时候如果需要初始化插件是不可能的,那应该怎么办呢?

把插件的js引入放在pjax加载完成的时候就好了,如本站例子

<script>
    // pjax
    $(document).pjax('a[href^="xxx"]:not(a[target="_blank"], a[no-pjax])', {
        container: '#kratos-blog-post',    
        fragment: '#kratos-blog-post',    
        timeout: 8000    
    }).on('pjax:send',    
        function() {    
            NProgress.start();//加载动画效果开始    
    }).on('pjax:complete',    
    function() {    
        <script type='text/javascript' src='xxxxxxx'></script>  //载入插件js    
        NProgress.done();//加载动画效果结束    
    });    
</script>