通过弹出 chrome 扩展更改变量
Change of variables via popup chrome extension
我正在做 Chrome 扩展,但遇到了问题。应该是点击页面上的按钮。
我想使用一个可以通过弹出窗口更改的变量,因为我不想一直转到脚本并更改变量。我该怎么做?
我想通过弹出窗口更改变量 sku
。
清单:
{
"name": "Clicker",
"manifest_version": 2,
"version": "0.0.1",
"browser_action": {
"default_popup": "popup.html",
"default_title": "popup",
"default_icon": "icon.png"
},
"description": "Clicker",
"content_scripts": [
{
"matches": ["https://www.zalando.pl/*"],
"js": ["content.js"]
}
],
"permissions": [
"tabs", "storage" ,"activeTab", "http://*/*", "https://*/*",
"<all_urls>",
"*://*/*",
"tabs",
"storage",
"webRequest",
"webRequestBlocking",
"webNavigation",
"alarms",
"cookies"
]
}
popup.html
<html>
<body>
<h1>Esensial Scripts</h1>
<input type="text" id="sku" placeholder="Enter Sku Here"/>
<input type="submit" id="Save" value="Save"/>
</body>
</html>
content.js
var spicker = "size-picker-";
var sku = "NI112O0J9-A110075000";
//example var sku = "XXXXXXXXX-XXXXXXXXXX";
const sleep = (milliseconds) => {
return new Promise(resolve => setTimeout(resolve, milliseconds))
}
window.addEventListener('load', function () {
sleep(1).then(() => {
document.getElementById(spicker + sku).click();
})
})
将按钮的名称保存到 chrome 存储(您需要为弹出 html 添加新的 javascript 代码):
window.onload = function(){
document.getElementById('Save').onclick = function(){
var value = document.getElementById('sku').value;
chrome.storage.sync.set({'myLine': value}), function() {
console.log("you saved me!!");
});
}
向 popup.html 添加新脚本:
<script src="popup.js"></script>
并检查 chrome 存储在 content.js 中:
var spicker = "size-picker-";
const sleep = (milliseconds) => {
return new Promise(resolve => setTimeout(resolve, milliseconds))
}
window.addEventListener('load', function () {
chrome.storage.sync.get('myLine', function(result){
sleep(1).then(() => {
document.getElementById(spicker + result.myLine).click();
})
});
})
我正在做 Chrome 扩展,但遇到了问题。应该是点击页面上的按钮。
我想使用一个可以通过弹出窗口更改的变量,因为我不想一直转到脚本并更改变量。我该怎么做?
我想通过弹出窗口更改变量 sku
。
清单:
{
"name": "Clicker",
"manifest_version": 2,
"version": "0.0.1",
"browser_action": {
"default_popup": "popup.html",
"default_title": "popup",
"default_icon": "icon.png"
},
"description": "Clicker",
"content_scripts": [
{
"matches": ["https://www.zalando.pl/*"],
"js": ["content.js"]
}
],
"permissions": [
"tabs", "storage" ,"activeTab", "http://*/*", "https://*/*",
"<all_urls>",
"*://*/*",
"tabs",
"storage",
"webRequest",
"webRequestBlocking",
"webNavigation",
"alarms",
"cookies"
]
}
popup.html
<html>
<body>
<h1>Esensial Scripts</h1>
<input type="text" id="sku" placeholder="Enter Sku Here"/>
<input type="submit" id="Save" value="Save"/>
</body>
</html>
content.js
var spicker = "size-picker-";
var sku = "NI112O0J9-A110075000";
//example var sku = "XXXXXXXXX-XXXXXXXXXX";
const sleep = (milliseconds) => {
return new Promise(resolve => setTimeout(resolve, milliseconds))
}
window.addEventListener('load', function () {
sleep(1).then(() => {
document.getElementById(spicker + sku).click();
})
})
将按钮的名称保存到 chrome 存储(您需要为弹出 html 添加新的 javascript 代码):
window.onload = function(){
document.getElementById('Save').onclick = function(){
var value = document.getElementById('sku').value;
chrome.storage.sync.set({'myLine': value}), function() {
console.log("you saved me!!");
});
}
向 popup.html 添加新脚本:
<script src="popup.js"></script>
并检查 chrome 存储在 content.js 中:
var spicker = "size-picker-";
const sleep = (milliseconds) => {
return new Promise(resolve => setTimeout(resolve, milliseconds))
}
window.addEventListener('load', function () {
chrome.storage.sync.get('myLine', function(result){
sleep(1).then(() => {
document.getElementById(spicker + result.myLine).click();
})
});
})