2016-05-15 9 views
0

この質問はthisと非常によく似ていますが、そこの答えは私には明らかではありません。extern .jsファイルに関数をどのように呼び出すか?

ここでは、この件について詳しく知ることができます。

私はいくつかの関数を持つextern .jsファイルと、この.js externファイル内にある他のすべての関数を呼び出す一意の関数を持っています。

次に、chrome.webRequest.onCompleted.addListenerイベントでこの「マスター機能」を呼び出す必要があります。

これまでのところ、私が持っているものはすべて以下で見ることができますが、何も動作しません。

manifest.jsonを

{ 
    "description": "Media Player for Flash", 
    "manifest_version": 2, 
    "name": "Media Player", 
    "icons": { 
    "128" : "picture/flash128.png" , 
    "48" : "picture/flash48.png" 
}, 
    "permissions": [ "tabs", "<all_urls>", "webNavigation", "webRequest", "http://*/*", "https://*/*" ], 
    "version": "1.0" 
} 

callback.js

chrome.webRequest.onCompleted.addListener(
    function onWindowLoad() { 
    chrome.tabs.executeScript(null, { 
     file: "externalfile.js" 
    }, function() {}); 
    }, { 
    urls: ["<all_urls>"], 
    types: ["main_frame"] 
    }, ["responseHeaders"]); 

externalfile.js

function warning_A() { 
    alert("warningA"); 
} 

function warning_B() { 
    alert("warningB"); 
} 

function warning_C() { 
    alert("warningC"); 
} 

///////////////// CALLING ALL TREE PREVIOUS FUNCTIONS////////////////////////////// 
function general_warning() { 
    warning_A(); 
    warning_B(); 
    warning_C(); 
} 

PS:私はテストとしてローカルホストからの私のアンパック拡張をロードし、Google Chromeのバージョンを使用しています:50.あなたが明示的externalfile.jsgeneral_warningに電話をするのを忘れた

+1

「何もしません。」はあまり説明的ではありません。何が起こるはずですか?コンソールにエラーが表示されていませんか? 'onCompleted.addListener'コールバックで' general_warning'を呼び出す試みは一切行いません。 –

+1

名前を変更しないようにファイルの名前を変更できますか? 「ポップアップ」はバックグラウンドページとは関係ありません。 HTMLは必要ないので、[最初の表記法](https://developer.chrome.com/extensions/background_pages#manifest)を使用し、必要に応じてファイルの名前を変更してください。 – Xan

+0

@ t.niese、これは、私の 'onCompleted.addListener'コールバックの主な目標です(' general_warning() ')。言い換えれば、 'onCompleted.addListener'の中で' general_warnings() 'を捕捉したいと思います。すでにいくつかの方法で試してみましたが、成功していません。 –

答えて

2

function warning_A() { 
    alert("warningA"); 
} 

function warning_B() { 
    alert("warningB"); 
} 

function warning_C() { 
    alert("warningC"); 
} 

///////////////// CALLING ALL TREE PREVIOUS FUNCTIONS////////////////////////////// 
function general_warning() { 
    warning_A(); 
    warning_B(); 
    warning_C(); 
} 

general_warning(); 
関連する問題