Покдлючение .js скрипта в .js скрипте
Ребят, помогите блондинке! Как подключить .js скрипт в .js скрипте? В интернете что-то подобное нашла, но не то. Главное, чтобы скрипт подключался напрямую, а не через функцию. Нужно примерно так:
index.html <!DOCTYPE HTML.. <script src="script.js"></script> script.js <!--js код--> подключение файла script2.js <!--js код--> script2.js //что-то типа
alert('script2.js успешно подключен.');
Как делать нельзя: index.html <!DOCTYPE HTML.. <script src="script.js"></script> script.js <!--js код--> //подключение файла script2.js в функции. Например, в add(). <!--js код--> //вызов функции add() Сама активация подключения скрипта и его отключения должна осуществляться событием onClick. Что-то вроде <a href="#" onclick="">Подключить скрипт</a> <p><a href="#" onclick="">Отключить скрипт.</a></p> |
Отключить? - Не получится, скрипт уже загружен в кэш и выполнен, как Вы хотите его отключить?
<a href="#" onclick="addScript('script.js')">Подключить скрипт</a>
function addScript(src) {
var a = document.head || document.getElementsByTagName('head')[0];
var b = document.createElement('script');
b.type = 'text/javascript';
b.src = src;
a.appendChild(b);
}
|
document.write('<script src="script2.js"><\/script>');
|
Ruslan_xDD,благодарю за решение!Вы мне очень помогли! А если попробовать при клике будет выполняться AJAX-скрипт, который будет как-бы обновлять данные в фоновом режиме, если это вообще возможно.Только в этот раз скрипт подключаться не будет.Думаю, так.
|
То есть, Вы хотите AJAX'ом загрузить скрипт и выполнить его?
Можно так попробовать, на jQuery:
function runScript(src) {
$.get(src, {}, function(js) {
eval(js);
});
}
|
Ruslan_xDD,точнее обновить данные, чтобы ранее подключенный скрипт очистился из кеша и чтобы он не был подключен.
|
jule, как вы определяете "подключенность" скрипта? Что это по вашему значит?
|
danik.js, я уже решила проблему ) . Правда, не этим способом, но решила. Все же, отвечу на Ваш вопрос. Допустим, есть определенный кусок кода, который работает только при подключенном скрипте. Когда подключающей строки (<script src="путь_к_файлу"></script>) нет и скрипта в кэше браузера тоже , он не работает. Вся проблема в том, что фичи, которые я использую на своем сайте, работают с помощью разных библиотек JS и JQuery. Однако, между некоторыми либрами возник конфликт - если 1 скрипт функционирует, то второй нет и наоборот. Кончено же, конфликт можно решить путем правки кода в библиотеках. Однако, это геморойно. Readme-файл к исходникам не прилагался. Да и на сайте разработчиков разъяснялось только то, как подключить либы с их сервера. Однако, в моем случае это не подходит.Мне пришлось скачивать эти библиотеки и вносить небольшие коррективы. В принципе, править чужой код мне не составит труда, но там огромные библиотеки .js кода, имеющие свои зависимости. Мне было бы тогда проще написать их самой с нуля.
|
noConflict() не пробовали?
|
| Часовой пояс GMT +3, время: 19:39. |