У меня есть множество функций и обработчиков событий, которые разбиты на несколько файлов javascript, которые включены на разные страницы моего сайта.
Из соображений производительности я хочу объединить все эти файлы в один файл, которыйглобально по всему сайту.
Проблема в том, что у меня будут вызываться обработчики событий для элементов, которые не обязательно существуют, и с одинаковыми именами функций.
Это пример типичного файла JavaScript..
$(document).ready(function(){
$('#blah').keypress(function(e){
if (e.which == 13) {
checkMap();
return false;
}
});
});
function checkMap() {
// code
}
function loadMap() {
// code
}
Мне нужно разделить этот код на объект, который вызывается на этой конкретной странице.
Я думаю, что могу переписать его так:
(function($) {
$.homepage = {
checkMap: function(){
// code
},
loadMap: function(){
//code
}
};
})(jQuery);
И тогда на странице, которая требует этого, я мог бы вызвать $.homepage.checkMap()
и т. Д.
Но тогда как бы мне объявить обработчики событий, такие как document.ready
, не содержа их в своей собственной функции?