1

そのため、初めて私のページにアクセスしたときに、one.cssというデフォルトのスタイルシートを読み込もうとしています。それ以外は、テーマを選択できるユーザーでした。私のロジックの問題は、別のスタイルに切り替えると、one.cssがサイトに初めてアクセスしたかのようにローカルストレージをリセットしているように見えることです。

はい、私は論理が間違っていることに気づいています。うまくいけば、誰かが私がやろうとしていることを整理できるでしょう。

var firstRun = (localStorage['styler'] == 'one');

if (!firstRun) {
  localStorage['styler'] = 'one';
  var style = localStorage["styler"];
  $('<link rel="stylesheet" type="text/css" href="'+style + '.css">').appendTo("head");
}   

else{
 var style = localStorage["styler"];
  $('<link rel="stylesheet" type="text/css" href="'+style + '.css">').appendTo("head");
}
4

2 に答える 2

1

私はあなたが探していると思います:

var style = localStorage['styler'];

if (typeof style === 'undefined'){
   style = 'one';
   localStorage['styler'] = style;
   $('<link rel="stylesheet" type="text/css" href="'+ style + '.css">').appendTo("head");
}
else{
   $('<link rel="stylesheet" type="text/css" href="'+ style + '.css">').appendTo("head");
}
于 2012-06-25T17:51:26.667 に答える
0

あなたは常に可変スタイルを持っています=="one"

var firstRun = (localStorage['styler'] == 'one');

if (!firstRun) {
  var style = localStorage["styler"];
  if(typeof style === 'undefined') style = 'two'
  $('<link rel="stylesheet" type="text/css" href="'+style + '.css">').appendTo("head");
  localStorage['styler'] = 'one';
}   

else{
  var style = localStorage["styler"];
  $('<link rel="stylesheet" type="text/css" href="'+style + '.css">').appendTo("head");
}
于 2012-06-25T17:54:00.040 に答える