我已经创建了我自己的Chrome扩展程序,在LinkedIn页面上获得ChatGPT的赞美。该扩展程序有1个manifest.json
文件,1个popup.js
文件和1个popup.html
文件。清单文件如下:
{
"manifest_version": 2,
"name": "ChatGPT for LinkedIn Profile",
"description": "The simple Chrome extension using to get compliments from the LinkedIn profile and show it to the user.",
"version": "1.0",
"browser_action": {
"default_icon": "logo.png",
"default_popup": "popup.html"
},
"icons": {
"128": "logo.png"
},
"permissions": [
"activeTab"
]
}
popup.js
文件是这样的:
document.addEventListener("DOMContentLoaded", () => {
document.getElementById("ask").addEventListener('click', function(){
// null here defaults to active tab of current window
chrome.tabs.executeScript(null, {
code: `
var tag = document.querySelectorAll('section.artdeco-card');
var len = tag.length;
[
tag[0].innerText,
tag[1].innerText,
tag[2].innerText,
tag[3].innerText,
tag[4].innerText,
tag[5].innerText,
]
`
}, response => {
const pageData = response[0];
var name, about="", activity="", experience="";
........
popup.html
文件是这样的:
<!DOCTYPE html>
<html>
<head>
<title>Simple Chrome Extension</title>
<script type="text/javascript" src="popup.js"></script>
</head>
<body style="padding:0px 10px;text-align:center;width:350px;">
<h1>ChatGPT for Linkedin Compliments</h1>
<hr>
<p>This extension gives <b>three compliments</b> about the <b>LinkedIn profile</b> on the page.</p>
<button id="ask" class="btn-ask" role="button"> Get </button>
<hr>
<p>The compliments are:</p>
<blockquote id="compliments" style="background:#eaf5ff;padding:5px; font-size: 12px;"></blockquote>
</body>
</html>
我想让我的扩展自动弹出,当我进入一个特定的网站。有一些关于manifest.json
文件的文章如下:
{
"manifest_version": 2,
"name": "My Extension",
"version": "1.0",
"description": "Description of my extension",
"content_scripts": [
{
"matches": ["https://www.tutorialspoint.com/*"],
"js": ["content.js"]
}
]
}
但它不工作。请告诉我如何写一个manifest.json
文件。谢谢。
1条答案
按热度按时间gv8xihay1#
内容脚本通常用于与网页DOM的一些交互。如果你想在网页之外进行一些操作(例如扩展弹出显示),你需要使用background script。在这个脚本中,你可以通过带有URL过滤器的
chrome.webNavigation.onCompleted
事件监听器来监控所有打开的网页。在所有匹配的URL上,你可以使用chrome.action.openPopup()
方法来显示弹出。manifest.json
:background.js
:popup.html
:popup.js
: