У меня есть рабочий Javascript, который впервые запрашивает у пользователя его адрес электронной почты и пароль; а затем он автоматически заполняет имя пользователя и пароль всякий раз, когда пользователь повторно посещает эту веб-страницу. В моем html-коде мне просто нужно вызвать функцию checkCookie(), чтобы выполнить это на JSFiddle.net.
Теперь я хочу создать расширение Chrome, которое при нажатии запускает автозаполнение JS. У меня есть эти коды, но при нажатии на расширение я не получаю вывода. Может ли кто-нибудь предложить мне, что я делаю неправильно.
// manifest.json
{
"manifest_version": 2,
"name": "Auto-fill Passwords",
"description": "This extension autofill password on click.",
"version": "1.0",
"browser_action": {
"default_icon": "icon.png"
},
"background": {
"scripts": ["background.js"]
}
}
// background.js
chrome.browserAction.onClicked.addListener(function (tab)
{ //Fired when User Clicks ICON
chrome.tabs.executeScript(tab.id, {
"file": "autofill.js"
}, function () {
function setCookie(c_name, value, exdays) {
var exdate = new Date();
exdate.setDate(exdate.getDate() + exdays);
var c_value = escape(value) + ((exdays == null) ? "" : "; expires=" + exdate.toUTCString());
document.cookie = c_name + "=" + c_value;
}
function checkCookie() {
var username = prompt("Please enter your name:", "");
var n= getCookie("username",username);
if(n)
{
alert("UserID Match! The user's password is " +n) ;
}
else
{
//alert("UserID password doesnot exist ");
var password = prompt("Please enter your password:", "");
username += "!";
username += password;
alert("Username = "+ username);
setCookie("username", username, 365);
}
}
console.log("Script Executed .. "); // Notification on Completion
});
}
});
//autofill.js
alert("Check cookie function is called");
checkCookie();