У меня есть базовый пример шаблона модуля, который просто добавляет класс к элементу нижнего колонтитула на странице.Модуль JavaScript-модуля document.ready не работает
Когда сценарий загружается в тег тела (после элемента footer), он работает и добавляет класс в нижний колонтитул.
Когда сценарий загружается в тег заголовка (перед элементом нижнего колонтитула), он не работает, даже если инициатор не должен вызываться, пока документ не будет готов.
Я предполагаю, что document.ready работает не так, как ожидалось, и поэтому он не находит элемент нижнего колонтитула, поскольку он не существует.
Это искажало меня целую вечность, и я не могу найти решение, может кто-то пролить свет на эту проблему?
Пример: https://jsfiddle.net/5x5skoq3/
var App = (function ($) {
"use strict";
// private alias to settings
var s;
return {
settings: {
footer: $("footer")
},
init: function() {
s = this.settings;
this.footer();
},
footer: function(){
s.footer.addClass("active");
}
};
})(jQuery);
jQuery(document).ready(function() {
App.init();
});
Спасибо
Спасибо всем за ваш вклад и описания за то, почему он не работал, теперь все имеет смысл. Я пошел с подходом War10ck, поскольку он придерживается той же логики, что и я. Отличная работа!! –