SmoothState не запускает $(document).ready()

Я собираю простой сайт и хочу использовать приятные переходы из SmoothState.js, но я также использую другие скрипты jQuery (например, Flexslider), которые я настроил для запуска $(document).ready() - и теперь, когда мои переходы приятные и плавные, другой JS больше не стреляет.

Я попытался поместить это в начале всех моих страниц (взято отсюда):

(function($, undefined) {
    var isFired = false;
    var oldReady = jQuery.fn.ready;
    $(function() {
        isFired = true;
        $(document).ready();
    });
    jQuery.fn.ready = function(fn) {
        if(fn === undefined) {
            $(document).trigger('_is_ready');
            return;
        }
        if(isFired) {
            window.setTimeout(fn, 1);
        }
        $(document).bind('_is_ready', fn);
    };
})(jQuery);

Но они все еще не стреляют должным образом.

Что мне не хватает?

1 ответ

Решение

Оказывается, моя проблема заключалась в том, что я загружал свежий JavaScript в заголовок моих новых страниц, который не был обнаружен. Перемещая его в центральный файл, который загружается при каждой начальной загрузке страницы, все работает отлично.

Другие вопросы по тегам