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 в заголовок моих новых страниц, который не был обнаружен. Перемещая его в центральный файл, который загружается при каждой начальной загрузке страницы, все работает отлично.