2017-03-27 19 views
0

新しいChrome拡張機能が作成されていて、問題なく機能しました。しかし、今日は新しい機能をコーディングしていましたが、拡張機能のアイコンがグレー表示されていました。アイコンをクリックすると、ポップアップは表示されません。 興味深い点の1つは、拡張機能が動作していることです。エラーログはありません。Chrome拡張機能のポップアップがもう表示されない

私が書いたすべてのコードにコメントしましたが、何の効果もありませんでした。 Chromeで直接リンクを開くと、ポップアップが正常に表示される新しいタブが開きます。 [chrome-extension://extensionId/popup.html]

私のマニフェストは大丈夫、popup.html/jsにも見えます。私は本当に何が起こったのか分からない。何か案は?ありがとう!

manifest.jsonを

{ 
    "name": "Say It", 
    "version": "0.0.1", 
    "manifest_version": 2, 
    "description": "__MSG_appDescription__", 
    "icons": { 
    "16": "images/icon-16.png", 
    "128": "images/icon-128.png" 
    }, 
    "default_locale": "en", 
    "background": { 
    "scripts": [ 
     "scripts/chromereload.js", 
     "scripts/background.js" 
    ] 
    }, 
    "permissions": [ 
    "tabs", 
    "http://*/*", 
    "https://*/*", 
    "background", 
    "bookmarks", 
    "clipboardRead", 
    "clipboardWrite", 
    "contentSettings", 
    "cookies", 
    "*://*.google.com/", 
    "debugger", 
    "history", 
    "idle", 
    "management", 
    "notifications", 
    "pageCapture", 
    "topSites", 
    "storage", 
    "webNavigation", 
    "webRequest", 
    "webRequestBlocking", 
    "nativeMessaging" 
    ], 
    "options_ui": { 
    "page": "options.html", 
    "chrome_style": true 
    }, 
    "content_scripts": [ 
    { 
     "matches": [ 
     "http://*/*", 
     "https://*/*" 
     ], 
     "js": [ 
     "scripts/contentscript.js" 
     ], 
     "run_at": "document_end", 
     "all_frames": false 
    } 
    ], 
    "omnibox": { 
    "keyword": "OMNIBOX-KEYWORD" 
    }, 
    "page_action": { 
    "default_icon": { 
     "19": "images/icon-19.png", 
     "38": "images/icon-38.png" 
    }, 
    "default_title": "Say It", 
    "default_popup": "popup.html" 
    }, 
    "web_accessible_resources": [ 
    "images/icon-48.png" 
    ] 
} 

Popup.html

<!DOCTYPE html> 
<html ng-app="app"> 
    <head> 
    <meta charset="utf-8"> 
    <link rel="stylesheet" type="text/css" href="styles/main.css"> 
    <link rel="stylesheet" type="text/css" href="bower_components/bootstrap/dist/css/bootstrap.min.css"> 
    </head> 
    <body ng-controller="mainController as ctrl"> 
    <h4>Choose your Destiny!</h4> 
    <button class="btn btn-large btn-primary" ng-click="ctrl.kappa()">Kappa</button> 
    <button class="btn btn-large btn-secondary" ng-click="ctrl.pride()">Pride</button> 
    <button class="btn btn-large btn-success" ng-click="ctrl.fon()">Fon</button> 
    <script type="text/javascript" src="bower_components/jquery/dist/jquery.min.js"></script> 
    <script type="text/javascript" src="bower_components/angular/angular.min.js"></script> 
    <script type="text/javascript" src="bower_components/bootstrap/dist/js/bootstrap.min.js"></script> 
    <script type="text/javascript" src="main.js"></script> 
    <script type="text/javascript" src="scripts/popup.js"></script> 
    </body> 
</html> 

Popup.js

(function() { 
    'use strict'; 

    angular.module('app').controller('mainController', function() { 
    var self = this; 

    //Por localStorage 

    console.log(localStorage.getItem('kappa')); 

    //Por API 
    chrome.storage.local.get('value', function (res) { 
     console.log(res); 
    }); 

    this.kappa = function() { 
     console.log('Seu Kappa!'); 
    }; 

    this.pride = function() { 
     console.log('Seu KappaPride!'); 
    }; 

    this.fon = function() { 
     console.log('Fon!'); 
    }; 
    }); 
})(); 
+0

指定したURLにのみ表示されるようになっているpage_actionを使用しています。おそらく[browser_action popup](https://developer.chrome.com/extensions/browserAction)が必要です。また、ポップアップのエラーを表示するには、それを右クリックし、次に「検査」をクリックします。 – wOxxOm

+0

ポップアップを検査しようとしましたが、ウィンドウが開きませんでした。私はbrowser_actionを使ってみます。私はpage_actionについて知らなかった、説明のおかげで。私は今試して、その後私の答えを更新します。 – Katreque

+0

パーフェクト! @wOxxOmこれですべてが再び働いています。あなたの知識を共有していただきありがとうございます。感謝! – Katreque

答えて

1

manifest.jsonでWH("page_action"を交換唯一の特定のページで動作します)"browser_action"(すべてで動作します)。

+0

ありがとうございました。今はすべてが正しい! – Katreque

+0

私のために働く。なぜこれはそうですか? –

関連する問題