Я помещаю значение цвета в chrome.storage в моем background.js так:
document.addEventListener('DOMContentLoaded', function() {
var c = document.getElementById('button_confirm');
var ic = document.getElementById('input_color');
c.addEventListener('click', function() {
chrome.storage.loc.set({"value": ic.value}, function() {
console.log("The value stored was: " + ic.value);
});
});
});
Затем я хочу получить его из хранилища в contentScript и применить th-значение в качестве цвета границы следующим образом:
var links = document.querySelectorAll("link[rel]");
var as = document.querySelectorAll("a[href]"); //doplnit i kdyby nebyl odkaz na a ale například button
var hovno;
for (var i = 0, len = links && links.length; i < len; ++i)
{
var link = links[i];
var a = as[i];
if (link.rel == "prerender")
{
chrome.runtime.sendMessage({ "newIconPath" : "48.png" });
var prerendered_href = link.href;
for (var j = 0, len = as && as.length; j < len; ++j)
{
var a = as[j];
if(a != "")
{
if(extractURL(prerendered_href) == extractURL(a.href)){
chrome.storage.local.get(["value"], function(result) {
a.setAttribute("style", "border: 2px dashed "+ hovno +"; display: inline-block !important;");
});
}
}
}
}
else{
chrome.runtime.sendMessage({ "newIconPath" : "48-gray.png" });
}
}
function extractURL(Adress){
var pathname = new URL(Adress).pathname;
var domain = new URL(Adress).hostname.replace("www.","");
return domain+pathname;
}
Всегда выдает ошибку, говоря, что "hovno" не определено. Что я здесь не так делаю?