@Nick_Apex

Загрузка удаленного js скрипта из js скрипта(расширения google chrome)?

Неплохое название, так ведь?)

Изначально имеем расширение для google chrome которое может запустить скрипт запакованный в само расширение. Для того что бы обновить скрипт нужно его собрать и перезалить в личном кабинете разработчика google.

Суть задачи в том, что бы во встроенном скрипте заложить код который будет подгружать еще один скрипт из удаленного сервера и выполнять его на загружаемой страничке(вместо обновления). Была идея создать новый узел html и указать там src на сервер со скриптом
function include_js(file) {
    var html_doc = document.getElementsByTagName('head')[0];
    js = document.createElement('script');
    js.setAttribute('type', 'text/javascript');
    js.setAttribute('src', 'http://server.com/script.js');
    html_doc.appendChild(js);
}
include_js();
но вот незадача - когда расширение создаст эту строчку, браузер давно выполнит эту часть html страницы... Прошу помощи, друзья)
  • Вопрос задан
  • 774 просмотра
Решения вопроса 1
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
function loadScript(url,callback) {
    var script = document.createElement("script")
    script.type = "text/javascript";
    if (script.readyState){  //IE
        script.onreadystatechange = function(){
            if (script.readyState == "loaded" ||
                    script.readyState == "complete"){
                script.onreadystatechange = null;
    	        script.parentNode.removeChild( script );
                callback();
            }
        };
    } else {  //Others
        script.onload = function(){
		     this.parentNode.removeChild(this);
		     callback();
        };
    }
   	script.src = url;
   	document.getElementsByTagName("head")[0].appendChild(script);
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы