没有右击Chrome扩展程序

时间:2015-07-12 16:41:45

标签: javascript google-chrome google-chrome-extension

我正在尝试制作Chrome扩展程序,它应该做一件简单的事情:右键单击时,没有任何反应。我已经阅读了Chrome的文档,该网站上的许多文章以及许多其他文章,尝试了大量代码,使用背景页面或脚本,持久性或非持久性,以及各种JavaScript代码来中和右键单击。

最后,我决定在这里问一下,因为在我看来,我错过了一件简单的事,但我找不到什么。

我尝试了很多东西,但让我们从最简单的一个开始,我看不出有什么问题:

manifest.json:

{
  "manifest_version": 2,

  "name": "norightclick",
  "description": "empecher le clic droit sur les pages",
  "version": "1.0",

  "background": {
    "persistent": false,
    "scripts": ["norightclick.js"]
  },

  "permissions": [
    "activeTab",
    "tabs",
    "background",
    "contextMenus"
  ]
}

norightclick.js:

document.onselectstart=new Function ("return false");
document.oncontextmenu=new Function ("return false");

我在Chrome中导入了所有这些内容,但没有任何反应:没有错误消息,但是当我右键单击页面时仍会出现相同的上下文菜单。

(这只是一个“从头开始重启”,我尝试了很多东西,不可能把它们放在这里)。

2 个答案:

答案 0 :(得分:3)

在我的 string tokens[8]; int i =0; int j=0; vector<Package *> myPack[5]; while (file.good()){ getline(file,buffer); cout<< buffer<< endl; string token, text(buffer); istringstream iss(text); cout <<endl; while (getline(iss, token, '|')){ cout << token << endl; tokens[i]=token; i++; } myPack[0] = new Package(tokens[0] ,tokens[1],tokens[2],tokens[3], stod(tokens[4]), stod(tokens[5])); j++; } 文件中,我不得不替换:

  myPack[0] = new Package(tokens[0] ,tokens[1],tokens[2],tokens[3], stod(tokens[4]), stod(tokens[5]));

with:

$mydict = {"1":"one", "5":"five", "5":"five"};
$elements = $mydict["5"];
console.log($elements);

然后,将manifest.json重命名为"background": { "persistent": false, "scripts": ["norightclick.js"] },

我在此页面上找到了这个: Developing google extensions

答案 1 :(得分:0)

问题是你的脚本。它应该是

    document.oncontextmenu=function(){return false;};