Мне нужно связать все мои файлы javascript в один файл. Это требование. Теперь я создал пару задач grunt для конкатенирования файлов javascript. Сценарий:Конкатенированный Javascript, выполнение jQuery
jquery.js
jquery.plugin1.js
custom.js
>> combined.js
На моей установке разработки я использую yepnopejs
, чтобы загрузить все скрипты и их преобразования приложений на доработку. Это прекрасно работает. Весь мой javascript-код работает отлично, за исключением конкатенированного файла. Похоже, что jQuery выполняется слишком рано, поэтому некоторые из моих селекторов не соответствуют актуальной разметке.
development
$('input, select').not(':hidden').each(function(){...});
>> length: 21 items
работы
production (concated file)
$('input, select').not(':hidden').each(function(){...});
>> length: 0 items
не работает.
Initialization
development
yepnope([
{
load: 'http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js'
},
{
load: 'js/jquery.plugin1.js',
complete: function() {
onReady();
}
}]);
production
$(window).load(function(){
onReady();
});
Я попытался также $(document).ready(function)
и так далее. Я почти уверен, что моя часть инициализации сломана или полностью ошибается.
Вы можете переместить свой Javascript в другое место в нижней части страницы? или это сломает все ужасно? – Mgetz
Согласованный? Вы имеете в виду сцепление? – j08691
Пометка здесь не может быть изменена @ mgetz – onigunn