Javascript Chrome扩展设置页面
我有这段代码(感谢),我想让它成为一个Chrome扩展。我写了一个设置/选项页面,但实际上并没有保存设置。帮忙 Javascript:Javascript Chrome扩展设置页面,javascript,google-chrome-extension,local-storage,Javascript,Google Chrome Extension,Local Storage,我有这段代码(感谢),我想让它成为一个Chrome扩展。我写了一个设置/选项页面,但实际上并没有保存设置。帮忙 Javascript: var pretty_fied = false; var isOn = localStorage.isOn; var isCapFirst = localStorage.isCapFirst; var firstLetterPerWord = localStorage.firstLetterPerWord; function yay() { if
var pretty_fied = false;
var isOn = localStorage.isOn;
var isCapFirst = localStorage.isCapFirst;
var firstLetterPerWord = localStorage.firstLetterPerWord;
function yay() {
if ($("#on").value == "on") {
isOn = true;
localStorage["isOn"] = true;
}
else {
isOn = false;
localStorage["isOn"] = false;
}
if ($("#first").value == "on") {
isCapFirst = true;
localStorage["isCapFirst"] = true;
}
else {
isCapFirst = false;
localStorage["isCapFirst"] = false;
}
if ($("#per").value == "on") {
firstLetterPerWord = true;
localStorage["firstLetterPerWord"] = true;
}
else {
firstLetterPerWord = false;
localStorage["firstLetterPerWord"] = false;
}
};
$('input, textarea').keyup(function () {
alert(isOn);
if (isOn) {
prev = true;
var value = $(this).val();
var altText = '';
for (num = 0; num < value.length; num++) {
if (num % 2 == 0)
altText += value[num].toUpperCase();
else
altText += value[num].toLowerCase();
}
$(this).val(altText);
}
});
var pretty\u fied=false;
var-isOn=localStorage.isOn;
var isCapFirst=localStorage.isCapFirst;
var firstLetterPerWord=localStorage.firstLetterPerWord;
函数yay(){
如果($(“#开”)。值==“开”){
isOn=真;
localStorage[“isOn”]=true;
}
否则{
isOn=假;
localStorage[“isOn”]=false;
}
if($(“#first”).value==“on”){
isCapFirst=true;
localStorage[“isCapFirst”]=true;
}
否则{
isCapFirst=false;
localStorage[“isCapFirst”]=false;
}
如果($(“#每”)。值==“开”){
firstLetterPerWord=true;
localStorage[“firstLetterPerWord”]=true;
}
否则{
firstLetterPerWord=false;
localStorage[“firstLetterPerWord”]=false;
}
};
$('input,textarea').keyup(函数(){
警戒(国际部队);
国际单项体育联合会{
prev=真;
var值=$(this.val();
var altText='';
对于(num=0;num
下面是HTML:
<!DOCTYPE html>
<html>
<head>
<title>Y.A.Y | Options</title>
<script type="text/javascript" src="/js/caps.js"></script>
</head>
<body>
<h1>Settings</h1>
<form>
<label>Enabled: </label>
<select id="on">
<option value="on">Yes</option>
<option value="off">No</option>
</select>
</br>
<label>First Letter:</label>
<select id="first">
<option value="on">Capital</option>
<option value="off">Lowercase</option>
</select>
</br>
<label>Change First Letter of Each </label>
<select id="per">
<option value="on">Word</option>
<option value="off">Sentence</option>
</select>
<button id="done" onclick="yay()">Save</button>
</form>
</body>
</html>
Y.A.Y |选项
设置
启用:
对
不
第一个字母:
首都
小写字母
更改每个字母的第一个字母
单词
判决
拯救
yay()应该保存设置,但它不保存。在Chrome Extension中,您不应该使用本地存储。这是为网站设计的 改为如下使用: JavaScript:
var pretty_fied = false;
var isOn;
var isCapFirst;
var firstLetterPerWord;
getData()
function getData() {
chrome.storage.sync.get( function ( data ) {
isOn = data.isOn;
isCapFirst = data.isCapFirst;
firstLetterPerWord = data.firstLetterPerWord;
} )
}
function yay() {
isOn = $("#on").value == "on";
isCapFirst = $("#first").value == "on";
firstLetterPerWord = $("#per").value == "on";
chrome.storage.sync.set( {
isOn: isOn,
isCapFirst: isCapFirst,
firstLetterPerWord: firstLetterPerWord
} )
}
如果您确实愿意,可以使用HTML5 localStorage,但不能像onclick处理程序那样使用内嵌js。当某些东西不起作用时,请始终查看devtools控制台:您将在那里看到一个错误。在“chrome.storage.sync.get(function(data){”行中有一个错误。我从未使用过chrome存储。帮助?