javascript импорт как ?

kuzmit42

Постоялец
Регистрация
9 Янв 2013
Сообщения
132
Реакции
31
Есть такой вопрос. Как импортировать содержимое, из одного файла в другой. Ну или как подключить 1 js, из другого ?
К примеру в CSS есть такая возможность.
HTML:
@import "/style/print.css" print;
@import "/style/palm.css" handheld;
BODY {
font-family: Arial, Verdana, Helvetica, sans-serif;
font-size: 90%;
background: white;
color: black;
}
Т.е. Подключаем 1 файл, и в него импортируем данные из 2х других.

Есть ли какой-то способ чтобы сделать такое и с JS скриптами ?
Зачем это нужно. К примеру на сайте подключено 10 мелких скриптов, я хочу сделать следующее. Подключить 1 скрипт, и добавить возможность импортировать эти все 10 скриптов в 1 большой файл ?
Так вот как, и реально ли такое вообще ?
 
Через яваскрипт добавь новый эллемент на страницу, который представляет из себя html-код вызова яваскрипта:

Код:
var script = document.createElement('script');
script.src = '[url]http://example.com/script.js';[/url]
document.getElementsByTagName('head')[0].appendChild(script);

Или jquery:
Код:
jQuery(document).ready(function ($) { 
   $.getScript("/sites/all/themes/mytheme/js/ready.js");       
})(jQuery);

Примеры нагуглены по запросу: "подключение яваскрипт файла из яваскрипт"
 
есть несколько способов.
1. document.write('<script src="http:/sdddffddf.com"></script>');
если вы такое сделаете уже после загрузки страницы, когда документ готов - перезатрется вся страница, как и при любом вызове document.write после document.readyState == 'complete'.
2. более корректный и безопасный (в плане обработки на событие загрузки страницы) document.appendChild, как описал Для просмотра ссылки Войди или Зарегистрируйся выше.

можно еще извратнуться с ифреймами, но это крайне геморно, ибо политика безопасности. нужно вешать листенеров в главном документе и в дочернем отсылать postMessage. либо через субдомены. но это уже другая история :)
 
Назад
Сверху