在间接导航时,JQuery代码在页面加载后停止工作

时间:2018-02-02 08:14:45

标签: javascript jquery wordpress

我面临以下问题:
所有代码都正常工作,除非我通过复制粘贴网址,点击鼠标滚轮等导航到页面。如果我使用网站菜单通过左键单击导航到页面,它工作正常。
因此,当页面间接加载时,我的一些JQuery代码在页面加载完成后停止工作 - 所以它实际上工作了一秒左右,然后停止。如果,例如在页面加载完成之前单击按钮,代码将运行。如果我等到页面加载完毕,它就没有了。
此外,这不会发生在所有代码中,只是其中的一部分。我试图弄清楚为什么它的一些有用,并且可能(或没有)停止工作的代码是直接使用我已经包含的插件的方法的代码,这不是在点击事件中(或者在另一个函数内?)。

工作代码示例:

$(".pr-gallery img").click(function(){
    var gallery = $(this).attr("data-num");
    $(gallery.toString()).magnificPopup('open');
});

在这里,即使有magnificPopup方法,它也能正常工作。

非工作代码示例:

$('#ctr-fixed-menu').drawer({
    align: 'right'
});

我在里面加载所有代码:

(function($) {
    $(document).ready(function() {
       ...code...
    }); 

})(jQuery);

并且还尝试了$(function(window)jQuery(window).load,以及将所有代码包含在函数中,如下所示:

jQuery(window).load(function(){
    function TestCall() {
        ...all code here...
    }

    window.onload=TestCall;
    });
})(jQuery)

没有一个有效。这可能是非常简单的事情,但我已经尝试解决它几个星期了,这让我发疯了。此外,控制台中没有错误消息。

请注意,这是针对WordPress网站的,所以我不知道是否可能与原始主题代码存在某种冲突(例如延迟加载?)。

非常感谢任何帮助。

0 个答案:

没有答案