我正在写我的第一个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] 删除。
我来说两句