Я пытаюсь получить значения, установленные в хранилище Chrome. Исходное значение было сохранено с использованием другого сценария с тем же расширением.
Сохраненное значение было сохранено с использованием:
chrome.storage.sync.set({
logoStore: logolink})
Затем я использую ниже, чтобы получить значение хранилища и заменить URL-адрес изображения. Без сомнения, совершенно неверный метод, синтаксис и все. (
Я очень плохо знаком с js и интенсивно искал в SO и в других местах правильный способ использования сохраненных значений. Извините за такой нубский вопрос.
На примечание - мне удалось решить мой последний вопрос с помощью и некоторых дополнительных усилий сам :) Спасибо.
========= ОБНОВЛЕНИЕ =========
Я получил эту часть работы благодаря вашему вкладу:)
Рабочий код для этого ...
chrome.storage.sync.get(['logoStore'], function(result) {
console.log('Value currently is ' + result.key);
var logourl = result.logoStore;
// ======= SWAP IMAGES ==========
var images = document.getElementsByTagName ("img");
var x=0;
while(x<images.length)
{
if(images[x].src == "https://www.url.com/images/new/common/logo-246x48-v1.gif")
{
images[x].src = logourl;
}
x=x+1;
}
});
Следующий шаг ...
Теперь мне нужно получить еще два значения из хранилища и вставить их в существующий HTML.
Я могу успешно получить первое значение для загрузки, но оно нарушает мой встроенный стиль, а второе значение не загружается.
Код ниже.
// ========== ADD HEADER TEXT ==============
chrome.storage.sync.get(['companyStore', 'dataStore'], function(result) {
console.log('Value currently is ' + result.key);
var company = result.companyStore;
var data = result.dataStore;
var el = document.querySelector('table.delivery-address');
// get element content as string
console.log(el.innerHTML)
// prepend to the element's content
el.innerHTML = '</table><div style="margin-right:0px;float:right;text-align:right;margin-top:20px;"><h2 style="font-size: 28px;">Info</h2><br/><p style="font-size:18px;line-height:1.4em;"><b>' + company; + '</b><br/>' + data; + '<b></p></div><br/><br/><table class="delivery-address">' + el.innerHTML;
});