MS Edge api 错误 "browser is not defined"
MS Edge api error "browser is not defined"
我正在尝试为新的 Microsoft Edge 浏览器构建一个扩展。加载解压后的扩展我得到这个错误,
Uncaught ReferenceError: browser is not defined
我已阅读 Microsoft Edge 文档,所有扩展 API 都在 browser
命名空间下。
我在我的 manifest.json
文件中包含了存储权限。这是我的 manifest.json
文件中的代码,
{
"manifest_version": 2,
"name": "Demo",
"author": "Plaban Kumar Mondal",
"description": "Demo",
"version": "1.0.0",
"icons": {
"128": "icon128.png",
"48": "icon48.png",
"16": "icon16.png"
},
"browser_action": {
"default_icon": {
"48": "icon48.png",
"16": "icon16.png"
},
"default_popup": "popup.html"
},
"options_page": "options/options.html",
"permissions": ["activeTab", "storage"]
}
这是我的 javascript 文件,我在其中使用 browser
命名空间,
const checkboxes = document.querySelectorAll("input[type='checkbox']");
checkboxes.forEach((checkbox) => {
return checkbox.addEventListener("change", () => {
if (checkbox.changed) {
browser.storage.local.set({ [checkbox.name]: true }, () => {
browser.storage.onChanged.addListener(() => console.log("true"));
});
} else {
browser.storage.local.set({ [checkbox.name]: false }, () => {
browser.storage.onChanged.addListener(() => console.log("changed to false"));
});
}
});
});
我的代码有什么问题?
const checkboxes = document.querySelectorAll("input[type='checkbox']");
checkboxes.forEach((checkbox) => {
return checkbox.addEventListener("change", () => {
if (checkbox.changed) {
chrome.storage.local.set({ [checkbox.name]: true }, () => {
chrome.storage.onChanged.addListener(() => console.log("true"));
});
} else {
chrome.storage.local.set({ [checkbox.name]: false }, () => {
chrome.storage.onChanged.addListener(() => console.log("changed to false"));
});
}
});
});
For chromium-based edge, the browser will support the above code.
我正在尝试为新的 Microsoft Edge 浏览器构建一个扩展。加载解压后的扩展我得到这个错误,
Uncaught ReferenceError: browser is not defined
我已阅读 Microsoft Edge 文档,所有扩展 API 都在 browser
命名空间下。
我在我的 manifest.json
文件中包含了存储权限。这是我的 manifest.json
文件中的代码,
{
"manifest_version": 2,
"name": "Demo",
"author": "Plaban Kumar Mondal",
"description": "Demo",
"version": "1.0.0",
"icons": {
"128": "icon128.png",
"48": "icon48.png",
"16": "icon16.png"
},
"browser_action": {
"default_icon": {
"48": "icon48.png",
"16": "icon16.png"
},
"default_popup": "popup.html"
},
"options_page": "options/options.html",
"permissions": ["activeTab", "storage"]
}
这是我的 javascript 文件,我在其中使用 browser
命名空间,
const checkboxes = document.querySelectorAll("input[type='checkbox']");
checkboxes.forEach((checkbox) => {
return checkbox.addEventListener("change", () => {
if (checkbox.changed) {
browser.storage.local.set({ [checkbox.name]: true }, () => {
browser.storage.onChanged.addListener(() => console.log("true"));
});
} else {
browser.storage.local.set({ [checkbox.name]: false }, () => {
browser.storage.onChanged.addListener(() => console.log("changed to false"));
});
}
});
});
我的代码有什么问题?
const checkboxes = document.querySelectorAll("input[type='checkbox']");
checkboxes.forEach((checkbox) => {
return checkbox.addEventListener("change", () => {
if (checkbox.changed) {
chrome.storage.local.set({ [checkbox.name]: true }, () => {
chrome.storage.onChanged.addListener(() => console.log("true"));
});
} else {
chrome.storage.local.set({ [checkbox.name]: false }, () => {
chrome.storage.onChanged.addListener(() => console.log("changed to false"));
});
}
});
});
For chromium-based edge, the browser will support the above code.