2016-02-03 5 views
0

Я прочитал много документов об этом, но я не мог понять, что. Мне нужна помощь о выполнении другого js при нажатии кнопки. test.js - это мой файл javascript для выполнения. И в этом файле есть только одна строка кода, как «предупреждение (» test.js казнен "!);.Расширение Chrome - как выполнить javascript-файл с функцией нажатия кнопки?

В моем файла JavaScript моя функция щелчка так

$("#src").click(function(){ 
    alert("hi"); 
}); 

Это хорошо работает, Мне нужно, чтобы выполнить мой «test.js» сценарий, как это:.

$("#src").click(function(){ 
    alert("hi"); 
    $.getScript("javascript/test.js",function(){ 

    }) 
    .success(function(){ 
     alert("success"); 
    }) 
    .error(function(){ 
     alert("Failed to execute script"); 
    }); 
}); 

Но ничего не происходит без ошибок как хорошо Как я выполнить этот сценарий с щелчком

+0

Что именно вам нужно запустить в test.js? Если это всего лишь функция, то скорее импортируйте test.js на свою страницу и вызовите эту функцию непосредственно в прослушивателе кликов. – Skytiger

+0

Нет не просто функции, там много кодов также включает функции. – Nezih

ответ

1

это подпадает под использование..? eval, так как это именно то, что делает getScript.

Это not allowed by the default Chrome extension CSP и по уважительной причине.

Вы можете утверждать, что если скрипт включен с вашим расширением, риск безопасности не существует, и вы можете переопределить CSP, чтобы это разрешить. Это плохо и неряшливо.

В идеале, вы хотите просто включить test.js с тегом <script> на страницу и вместо этого вызвать некоторые функции. Может потребоваться внесение изменений в файл, но это правильный способ сделать это.

Если вы абсолютно необходимо выполнить весь test.js каждый раз, когда (хотя нет никаких оснований для этого), создавать и присоединять <script> элемент с src соответствующим образом установить. Это не нарушает CSP.

 Смежные вопросы

  • Нет связанных вопросов^_^