在Chrome扩展程序中重新加载浏览器后,如何保留变量的值

凯拉什(Kiarash Vazirzade)Nobary

我正在写我的第一个chrome扩展程序,在这个领域我很新。

我的目标是将URL和电子邮件发送到PHP服务器,但是现在我将它们发送到控制台。

我的问题是保存用户输入到我的扩展程序中的最后一封电子邮件。现在,当我关闭浏览器时,电子邮件的值将更改为undefined。

我输入了扩展程序的全部代码,但我认为问题必须出在getemail功能上。

background.js

//variables defenitions:
var email;
var urll;
//functions:

function getemail(){
     email = window.prompt("Pleas  enter your Email address:");
     chrome.storage.sync.set({'email':email}, function() {
      alert('You entered \n[' + email + "]\n as Email address.\nThank you for registration." );
      });
        var id = chrome.contextMenus.create({"title": "Submit your url","onclick":consollog });
        var id = chrome.contextMenus.create({"title": email+"/Change" ,"onclick":getemail });
        chrome.contextMenus.remove("1", null);
        chrome.contextMenus.remove("2", null);
        var id = chrome.contextMenus.create({"id":"2","title": "SUPPORT","onclick":support});
     }


function create(){
        var id = chrome.contextMenus.create({"title": "Submit your url","onclick":consollog });
        var id = chrome.contextMenus.create({"title": email+"/Change" ,"onclick":getemail });
        chrome.contextMenus.remove("1", null);
        chrome.contextMenus.remove("2", null);
        var id = chrome.contextMenus.create({"id":"2","title": "SUPPORT","onclick":support});
     }
function support(){
    alert("Contact ways:\nPhone number:+989378114692\nEmail address:[email protected]");
  }

function consollog(info, tab) {
  chrome.tabs.query({
  'active':true,"currentWindow": true,
}, function(lTabs) {
    urll=lTabs[0].url;
  console.log(urll)
  console.log(email)
  alert('You sent "' + urll + '" to our server');
});
}
//menu items:
if(email==undefined){
   var id = chrome.contextMenus.create({"id":"1","title": "Register Email","onclick":getemail });
    } 
   else {create();}


var id = chrome.contextMenus.create({"id":"2","title": "SUPPORT","onclick":support});

manifest.json:

{
   "name": "Jenco",
   "description": "This extension helps you to send url",
   "version": "0.9",
   "browser_action":{
      "default_icon":"32.png",
      "default_popup":"mypopup.html"},
   "permissions": ["contextMenus","tabs","activeTab", "http://*/*", "https://*/*","storage"],
   "background": {
      "scripts": ["background.js"]
      },
   "manifest_version": 2,
   "icons": { "16": "16.png",
              "32": "32.png",
              "48": "48.png" },
   "commands": {
      "send-url": {
         "suggested_key": { "default": "Ctrl+Shift+Z" },
         "description": "Send an url"
                    }
                }
}

我的代码来保存变量并加载变量:

// Saving
chrome.storage.sync.set({"variableName": value});
// Loading 1 thing
chrome.storage.sync.get("variableName", function(result){
    // Showing the requested variable value
    alert(result.variableName);
});
// Loading more things
chrome.storage.sync.get(["variableName", "variableNameTheSecond"], function(result){
    // Showing first the first one and then the second one
    alert(result.variablename);
    alert(result.variableNameTheSecond);
});

希望对您有帮助

他有

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在angular2中,如何在手动刷新/重新加载浏览器后保留html5控制值?

来自分类Dev

在PHP中,如何使变量在重新加载后保留其值?

来自分类Dev

Google Chrome浏览器扩展程序,可重新启动Google Chrome浏览器

来自分类Dev

Chrome扩展程序未加载到YouTube的浏览器导航中

来自分类Dev

Chrome扩展程序未加载到YouTube的浏览器导航中

来自分类Dev

如何在Google Chrome浏览器中重新加载Chrome PDF Viewer?

来自分类Dev

为什么在Firefox或Chrome中重新加载页面会导致浏览器调用服务器后触发卸载事件处理程序?

来自分类Dev

如何从扩展程序中找到Chrome浏览器的版本?

来自分类Dev

如何在Firefox和Chrome浏览器中检测NPAPI插件/扩展的首次加载

来自分类Dev

Chrome浏览器扩展程序,javascript在页面中编写

来自分类Dev

如何在Flutter Web应用程序中重新加载浏览器选项卡

来自分类Dev

在Chrome浏览器中以无痕模式加载Feed,但即使禁用了所有扩展程序,也无法加载

来自分类Dev

如何在Chrome扩展程序中隐藏浏览器窗口?

来自分类Dev

如何在Chrome浏览器扩展程序中执行javascript

来自分类Dev

如何在Google Chrome浏览器中检索隐藏的扩展程序

来自分类Dev

如何使用Mac在Chrome浏览器中强制执行扩展程序设置?

来自分类Dev

用户打开Chrome浏览器后立即执行“操作” [Chrome扩展程序开发]

来自分类Dev

在Chrome扩展程序中,如何从他们的Chrome浏览器中准确检索用户的区域/地区/国家/地区?

来自分类Dev

在Chrome扩展程序中,如何从他们的Chrome浏览器中准确检索用户的区域/地区/国家/地区?

来自分类Dev

Chrome扩展程序提取错误的元数据而没有重新加载整个页面(原始HTML和浏览器的解释之间存在差异)

来自分类Dev

在Visual Studio中是否有与python等效的“保存时浏览器重新加载”扩展程序?

来自分类Dev

当我关闭并打开Google Chrome浏览器后,扩展程序消失了

来自分类Dev

Chrome扩展程序:单击浏览器操作后,仅对当前域名执行

来自分类Dev

如何自动重新加载chrome扩展程序?

来自分类Dev

如何自动重新加载chrome扩展程序?

来自分类Dev

Google Chrome扩展程序:如何确定用户是否已登录Chrome浏览器?

来自分类Dev

如何将上下文菜单添加到带有Chrome扩展程序的浏览器操作中?

来自分类Dev

如何修复Chrome浏览器扩展程序中的本机主机已退出错误-本机消息

来自分类Dev

如何将上下文菜单添加到带有Chrome扩展程序的浏览器操作中?

Related 相关文章

  1. 1

    在angular2中,如何在手动刷新/重新加载浏览器后保留html5控制值?

  2. 2

    在PHP中,如何使变量在重新加载后保留其值?

  3. 3

    Google Chrome浏览器扩展程序,可重新启动Google Chrome浏览器

  4. 4

    Chrome扩展程序未加载到YouTube的浏览器导航中

  5. 5

    Chrome扩展程序未加载到YouTube的浏览器导航中

  6. 6

    如何在Google Chrome浏览器中重新加载Chrome PDF Viewer?

  7. 7

    为什么在Firefox或Chrome中重新加载页面会导致浏览器调用服务器后触发卸载事件处理程序?

  8. 8

    如何从扩展程序中找到Chrome浏览器的版本?

  9. 9

    如何在Firefox和Chrome浏览器中检测NPAPI插件/扩展的首次加载

  10. 10

    Chrome浏览器扩展程序,javascript在页面中编写

  11. 11

    如何在Flutter Web应用程序中重新加载浏览器选项卡

  12. 12

    在Chrome浏览器中以无痕模式加载Feed,但即使禁用了所有扩展程序,也无法加载

  13. 13

    如何在Chrome扩展程序中隐藏浏览器窗口?

  14. 14

    如何在Chrome浏览器扩展程序中执行javascript

  15. 15

    如何在Google Chrome浏览器中检索隐藏的扩展程序

  16. 16

    如何使用Mac在Chrome浏览器中强制执行扩展程序设置?

  17. 17

    用户打开Chrome浏览器后立即执行“操作” [Chrome扩展程序开发]

  18. 18

    在Chrome扩展程序中,如何从他们的Chrome浏览器中准确检索用户的区域/地区/国家/地区?

  19. 19

    在Chrome扩展程序中,如何从他们的Chrome浏览器中准确检索用户的区域/地区/国家/地区?

  20. 20

    Chrome扩展程序提取错误的元数据而没有重新加载整个页面(原始HTML和浏览器的解释之间存在差异)

  21. 21

    在Visual Studio中是否有与python等效的“保存时浏览器重新加载”扩展程序?

  22. 22

    当我关闭并打开Google Chrome浏览器后,扩展程序消失了

  23. 23

    Chrome扩展程序:单击浏览器操作后,仅对当前域名执行

  24. 24

    如何自动重新加载chrome扩展程序?

  25. 25

    如何自动重新加载chrome扩展程序?

  26. 26

    Google Chrome扩展程序:如何确定用户是否已登录Chrome浏览器?

  27. 27

    如何将上下文菜单添加到带有Chrome扩展程序的浏览器操作中?

  28. 28

    如何修复Chrome浏览器扩展程序中的本机主机已退出错误-本机消息

  29. 29

    如何将上下文菜单添加到带有Chrome扩展程序的浏览器操作中?

热门标签

归档