Я использую Modernizr для проверки функций, а именно csscolumns, и запускаю Modernizr.load()
, чтобы использовать полисполнение css3-multi-column.js, если эта функция недоступна. Все это работает очень хорошо, кроме того, что Modernizr/yepnope вставляет скрипт непосредственно перед элементом сценария Modernizr, а также перед моими таблицами стилей. Поскольку css3-multi-column.js
должен быть включен после всех таблиц стилей, которые я бы предпочел, если Modernizr добавит скрипт в конец страницы. Это возможно?Сделать Modernizr.load() добавить скрипты до конца страницы
Это мой код:
Modernizr.load({
test: Modernizr.csscolumns,
nope: 'http://host.org/js/libs/css3-multi-column.js';
});
Это то, что я хотел бы достичь с Modernizr, если это возможно:
if (!Modernizr.csscolumns) {
var script = document.createElement('script');
script.type = "text/javascript";
script.src = 'http://host.org/js/libs/css3-multi-column.js';
$('body').append(script);
}
Спасибо за ваш ответ! Наверное, мне было слишком лениво смотреть на источник епнопы. Из того, что я помню, Modernizr должен загружаться до любых js или css, что может быть причиной того, что вы не можете заставить 'yepnope.js' +' css3-multi-coluns.js' работать даже при загрузке его после таблиц стилей. Во всяком случае, после публикации моего вопроса я просто принял тот факт, что yepnope не поддерживал добавление скриптов в конец страницы. И хотя мой альтернативный код работает нормально, я просто подумал, что использование yepnope будет более чистым решением. – Simon
Сегодня я попытался загрузить CSS с помощью * Modernizr * таким образом, что был уверен, что он был загружен до 'css3-multi-coluns.js', и это не сработало. Я также добавил 'script.type =" text/javascript "' в код * Modernizr * без особого успеха. Я не вижу разницы между методом, используемым в * Modernizr * и вашим кодом? – Etienne
Я согласен, насколько я могу судить, по сути, что делает Modernizr, устанавливает параметры src/href и другие атрибуты и добавляет элементы сценария и ссылки в документ, т. Е. Почти то же самое, что и мой обходной путь. – Simon