我们先来回顾一下v2版可爱的右键小卡片吧
//右键设置区
chrome.contextMenus.create({
title: '我们就跳去百度吧',
contexts: ['all'],
id: "aaa",
onclick: function (params) {
// 注意不能使用location.href,因为location是属于background的window对象
chrome.tabs.create({ url: www.baidu.com});
}
}, function () {
});
v3中废弃了这里的onclick事件,所以呢,我们用chrome.contextMenus.onClicked.addListener去代替这个逝去的小小可爱
let MenuClick=[{
"title": '我们就跳去百度吧', // %s表示选中的文字
"contexts": ['all'], // 只有当选中文字时才会出现此右键菜单
"id": "aaa",
}];
chrome.runtime.onInstalled.addListener(function(){
MenuClick.forEach(item => {
chrome.contextMenus.create(item)
});
})
chrome.contextMenus.onClicked.addListener((info, tab) => {
//不喜欢if或者要加一堆东西的请用switch,健康你我他
if(info.menuItemId=="aaa"){
chrome.tabs.create({ url: www.baidu.com});
}
})
总的来看就是click单独拎出来集中处理了,这点跟跨域改头文件的规则思路,其实有点像的