Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/437.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何将一个简单的动态变量设置为chrome扩展的chrome.storage.local.set?_Javascript_Jquery_Html_Google Chrome Extension_Local Storage - Fatal编程技术网

Javascript 如何将一个简单的动态变量设置为chrome扩展的chrome.storage.local.set?

Javascript 如何将一个简单的动态变量设置为chrome扩展的chrome.storage.local.set?,javascript,jquery,html,google-chrome-extension,local-storage,Javascript,Jquery,Html,Google Chrome Extension,Local Storage,我有一个滑块,我希望能够将该值设置到本地存储中,以便在网页上动态使用该值 我需要帮助的部分是chrome.storage.local.set(v) 这个变量工作得很好,我只需要能够将它保存到本地存储中,这样我就可以使用它了。它在重新加载页面之前工作,所以我现在需要的是能够将其放入存储,这样在重新加载页面时,它会保存值 更新:这就是你说要做的吗 $('#slider').on('change', function () { var v = $(this).val(); var t

我有一个滑块,我希望能够将该值设置到本地存储中,以便在网页上动态使用该值

我需要帮助的部分是
chrome.storage.local.set(v)

这个变量工作得很好,我只需要能够将它保存到本地存储中,这样我就可以使用它了。它在重新加载页面之前工作,所以我现在需要的是能够将其放入存储,这样在重新加载页面时,它会保存值


更新:这就是你说要做的吗

$('#slider').on('change', function () {
    var v = $(this).val();
    var theKeyForV = chrome.storage.local.get({"keyforv" : v}, 
    chrome.storage.local.set({"keyforv" : v}, 
    function(){ 
        // callback (what goes here?)
    });
    $( 'div').each(function () {
        this.style.setProperty( 'margin', '10px '+theKeyForV+'px', 'important' );
    });
});

你可能需要多注意一下这个问题。chrome.storage.local是类型。因此,的第一个(也是唯一必需的)参数是“一个为每个键/值对提供更新的对象”。你只给了那个物体的后半部分。尝试:
chrome.storage.local.set({“sidemargins”:v})

您可能需要多注意一点。chrome.storage.local是类型。因此,的第一个(也是唯一必需的)参数是“一个为每个键/值对提供更新的对象”。你只给了那个物体的后半部分。尝试:
chrome.storage.local.set({“sidemargins”:v})

您可能需要多注意一点。chrome.storage.local是类型。因此,的第一个(也是唯一必需的)参数是“一个为每个键/值对提供更新的对象”。你只给了那个物体的后半部分。尝试:
chrome.storage.local.set({“sidemargins”:v})

您可能需要多注意一点。chrome.storage.local是类型。因此,的第一个(也是唯一必需的)参数是“一个为每个键/值对提供更新的对象”。你只给了那个物体的后半部分。尝试:
chrome.storage.local.set({“sidemargins”:v})

您可以这样使用:

// Set
var dataObj = {};
dataObj["key1"] = "vaule1";
// dataObj["key2"] = "vaule2"; // if you want to set value more than one key.
chrome.storage.local.set(dataObj, function() {
  if(!chrome.runtime.lastError){
      // set storage value successfully.
  }
});

// Get
var dataObj = ["key1"];
// var dataObj = ["key1", "key2"]; // if you want to get value more than one key. 
chrome.storage.local.get(dataObj, function (callback){
   if(callback && callback["key1"]){
     // To Do: handle callback["key1"].
    }
});

// Remove
var dataObj = ["key1"];
// var dataObj = ["key1", "key2"]; // if you want to remove value more than one key.
chrome.storage.local.remove(dataObj, function(callback) {
   if(!chrome.runtime.lastError){
      // remove successfully.
  }
});
要了解更多信息,请参见您可以使用以下方法:

// Set
var dataObj = {};
dataObj["key1"] = "vaule1";
// dataObj["key2"] = "vaule2"; // if you want to set value more than one key.
chrome.storage.local.set(dataObj, function() {
  if(!chrome.runtime.lastError){
      // set storage value successfully.
  }
});

// Get
var dataObj = ["key1"];
// var dataObj = ["key1", "key2"]; // if you want to get value more than one key. 
chrome.storage.local.get(dataObj, function (callback){
   if(callback && callback["key1"]){
     // To Do: handle callback["key1"].
    }
});

// Remove
var dataObj = ["key1"];
// var dataObj = ["key1", "key2"]; // if you want to remove value more than one key.
chrome.storage.local.remove(dataObj, function(callback) {
   if(!chrome.runtime.lastError){
      // remove successfully.
  }
});
要了解更多信息,请参见您可以使用以下方法:

// Set
var dataObj = {};
dataObj["key1"] = "vaule1";
// dataObj["key2"] = "vaule2"; // if you want to set value more than one key.
chrome.storage.local.set(dataObj, function() {
  if(!chrome.runtime.lastError){
      // set storage value successfully.
  }
});

// Get
var dataObj = ["key1"];
// var dataObj = ["key1", "key2"]; // if you want to get value more than one key. 
chrome.storage.local.get(dataObj, function (callback){
   if(callback && callback["key1"]){
     // To Do: handle callback["key1"].
    }
});

// Remove
var dataObj = ["key1"];
// var dataObj = ["key1", "key2"]; // if you want to remove value more than one key.
chrome.storage.local.remove(dataObj, function(callback) {
   if(!chrome.runtime.lastError){
      // remove successfully.
  }
});
要了解更多信息,请参见您可以使用以下方法:

// Set
var dataObj = {};
dataObj["key1"] = "vaule1";
// dataObj["key2"] = "vaule2"; // if you want to set value more than one key.
chrome.storage.local.set(dataObj, function() {
  if(!chrome.runtime.lastError){
      // set storage value successfully.
  }
});

// Get
var dataObj = ["key1"];
// var dataObj = ["key1", "key2"]; // if you want to get value more than one key. 
chrome.storage.local.get(dataObj, function (callback){
   if(callback && callback["key1"]){
     // To Do: handle callback["key1"].
    }
});

// Remove
var dataObj = ["key1"];
// var dataObj = ["key1", "key2"]; // if you want to remove value more than one key.
chrome.storage.local.remove(dataObj, function(callback) {
   if(!chrome.runtime.lastError){
      // remove successfully.
  }
});


要了解更多信息,请参见

,当您开始使用
get
ting时,请首先确保您理解。我并不是在实际设置边距,我有很多不同的css,我需要一些可以放置任意键的东西,而不仅仅是一个特定css。您可以创建自己的键名,并将带有多个键的对象传递给
set
。我刚刚编写了
侧边距
键,因为它似乎适合您的示例。BurningFish的示例将是一个不错的选择。或者我第一次评论的链接。如果你在这些方面有困难,我建议你问一个新问题,说明你到目前为止有什么(并从这里链接到它)。但是,如果你没有表现出你真的试图理解我发布的链接,它会很快关闭,就像那个链接的副本一样。当你开始使用
get
ting时,首先要确保你理解了。我并没有实际设置边距,我有很多不同的css,我需要一些东西,我可以放置任何键,而不仅仅是一个特定的css。你可以创建自己的键名,并将一个具有多个键的对象传递给
。我刚刚编写了
侧边距
键,因为它似乎适合您的示例。BurningFish的示例将是一个不错的选择。或者我第一次评论的链接。如果你在这些方面有困难,我建议你问一个新问题,说明你到目前为止有什么(并从这里链接到它)。但是,如果你没有表现出你真的试图理解我发布的链接,它会很快关闭,就像那个链接的副本一样。当你开始使用
get
ting时,首先要确保你理解了。我并没有实际设置边距,我有很多不同的css,我需要一些东西,我可以放置任何键,而不仅仅是一个特定的css。你可以创建自己的键名,并将一个具有多个键的对象传递给
。我刚刚编写了
侧边距
键,因为它似乎适合您的示例。BurningFish的示例将是一个不错的选择。或者我第一次评论的链接。如果你在这些方面有困难,我建议你问一个新问题,说明你到目前为止有什么(并从这里链接到它)。但是,如果你没有表现出你真的试图理解我发布的链接,它会很快关闭,就像那个链接的副本一样。当你开始使用
get
ting时,首先要确保你理解了。我并没有实际设置边距,我有很多不同的css,我需要一些东西,我可以放置任何键,而不仅仅是一个特定的css。你可以创建自己的键名,并将一个具有多个键的对象传递给
。我刚刚编写了
侧边距
键,因为它似乎适合您的示例。BurningFish的示例将是一个不错的选择。或者我第一次评论的链接。如果你在这些方面有困难,我建议你问一个新问题,说明你到目前为止有什么(并从这里链接到它)。但是如果你没有表现出你真的试图理解我发布的链接,它会很快关闭,就像那个链接的副本一样。谢谢,但是我如何添加动态变量来改变它呢?我不知道值,值是动态变化的,值本身需要是一个变量,而不是一个值。将有数百个不断变化的值,我需要它在每次变化时删除并设置新值。您的代码似乎有点复杂,我需要能够插入一个动态设置到localstorage中的字符串。如何获取它并将其插入到变量中?我用什么?我应该将
+key1+
替换为
+v+
?@sdfasdfacdsgcxzg
dataObj
callback
是具有所需更改值的对象。当它们更改时,您可以再次设置它们。顺便说一句,
localStorage
chrome.storage.local
是不同的东西。对不起,我还是不知道