2017-08-15 86 views
-2

我在创建Chrome扩展时遇到了一些问题。代码会影响Chrome中打开的所有页面,我该如何解决?扩展会影响另一个网页

manifest.json的

{ 
    "manifest_version": 2, 
    "name": "Merch Tools 41studio", 
    "description": "report app", 
    "version": "1.0", 
    "background": { 
     "scripts": ["assets/js/jquery.min.js", "assets/js/background.js"] 
    }, 
    "browser_action": { 
     "default_icon": "assets/image/icon.png", 
     "default_popup": "popup.html" 
    }, 
    "permissions": ["tabs"], 
    "content_scripts": [{ 
     "matches": ["http://*/*", "https://*/*"], 
     "js": ["assets/js/jquery.min.js", "assets/js/highcharts.js"] 
    }] 
} 
+2

不针对“所有网络” –

+0

你能告诉我,如何做到这一点? –

+2

你能告诉我你做了什么吗?具体清单 –

回答

1

你需要限制你的内容脚本由content_scripts改变matches财产上运行的域列表。拥有"http://*/*","https://*/*"意味着内容脚本可以在所有http和https网站上运行。而是您可以指定您希望扩展运行的网站列表。

{ 
    "manifest_version": 2, 
    "name": "Merch Tools 41studio", 
    "description": "report app", 
    "version": "1.0", 
    "background": { 
    "scripts": ["assets/js/jquery.min.js", "assets/js/background.js"] 
    }, 
    "browser_action": { 
    "default_icon": "assets/image/icon.png", 
    "default_popup": "popup.html" 
    }, 
    "permissions": ["tabs"], 
    "content_scripts": [{ 
    "matches": ["http:/yoursite.com/*"], // Change this to the sites you want your extension to run on 
    "js": ["assets/js/jquery.min.js", "assets/js/highcharts.js"] 
    }] 
} 
+0

我的应用程序在新标签上运行,不仅仅是一个网站[chrome-extension://] –

+0

因此,您不希望它在任何网站上运行,而是在新标签页上运行? – Nisarg

+0

是的,我希望它在新标签上运行 –