Пример подключения скрипта http://example.com/script.js
:
Native javascript
var script = document.createElement('script');
script.src = 'http://example.com/script.js';
document.getElementsByTagName('head')[0].appendChild(script);
alert('script loaded');
jQuery:
$.getScript('http://example.com/script.js', function(){
alert('script loaded');
});
Похожие записи
Комментарии
Классная кстати фишка! Я её теперь постоянно пользуюсь.
создаю файл где пишу
Ведь все надеюсь включают объединение файлов js и css для более быстрой загрузке сайта
А когда надо внести изменения или что то добавить и посмотреть результат тут же - то уже не надо будет очишать кеш или отключать объединение - просто нажать обновить страницу и новый код уже работает!
для разработчика лучше вообще отключить агрегацию и любое кеширование
http://xandeadx.ru/blog/drupal/156
А разве на работающем сайте вы не вносите мелкие поправки, дополнения?
document.head.appendChild(script); тоже работает
Спасибо Вам огромное,хоть понятно стало)
Пример на Native javascript не совсем может оказаться рабочим. Например если в подключаемом скрипте написать функцию и попробовать непосредственно после document.getElementsByTagName('head')[0].appendChild(script); её вызвать, то скорее всего Вы получите сообщение об ошибке ReferenceError: function is not defined
Естественно до алерта нужно вызвать свою функцию.
Вероятно это происходит из-за того что после добавления в заголовок страницы скрипта, подгрузка происходит асинхронно, почему неизвестно.
А если вызвать к примеру $("head").append($('')); то подгружается нормально синхронно.
$("head").append($('<s c r i p t type="text/javascript" src="'+url+'"></s c r i p t>'));
вырезалось
Почему бы не использовать
document.write('<script src="/files/jquery.min.js"><\/script>');
?Потому что сейчас не 2003-й
Тем не менее, вот так работает, а через DOM - нет:
Добавить комментарий