Windows 8 windows应用商店应用程序中的LocalSettings变量未持久化?
我正在尝试配置一个选项来更改fontsize,并创建了一个设置,但无法持久。该设置是一个选择控件。字体大小的默认设置来自Default.css,但我想根据用户选择进行覆盖。这是windows 8应用商店中的html/js应用程序。任何可行的例子都会很好。多谢各位Windows 8 windows应用商店应用程序中的LocalSettings变量未持久化?,windows-8,windows-store-apps,Windows 8,Windows Store Apps,我正在尝试配置一个选项来更改fontsize,并创建了一个设置,但无法持久。该设置是一个选择控件。字体大小的默认设置来自Default.css,但我想根据用户选择进行覆盖。这是windows 8应用商店中的html/js应用程序。任何可行的例子都会很好。多谢各位 <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>Preferences</ti
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Preferences</title>
<!-- WinJS references -->
<link href="//Microsoft.WinJS.1.0/css/ui-dark.css" rel="stylesheet" />
<script src="//Microsoft.WinJS.1.0/js/base.js"></script>
<script src="//Microsoft.WinJS.1.0/js/ui.js"></script>
<!-- App references -->
<link href="/css/default.css" rel="stylesheet" />
<script src="/js/preferences.js"></script>
</head>
<body>
<div data-win-control="WinJS.UI.SettingsFlyout"
data-win-options="{settingsCommandId:'preferences', width:'narrow'}">
<div class="win-ui-dark win-header">
<button type="button" onclick="WinJS.UI.SettingsFlyout.show()" class="win-backbutton"></button>
<div class="win-label">Preferences</div>
</div>
<div class="win-content ">
<div class="win-settings-section">
<label for="fontSize">Font Size:</label>
<select id="fontSize">
<option>18px</option>
<option>24px</option>
<option>32px</option>
<option>36px</option>
<option>42px</option>
<option>54px</option>
</select>
</div>
</div>
</div>
</body>
</html>
从我对代码的测试来看,数据持久性没有任何问题 这行代码导致
fontSize.value
中的值为空字符串,即使appData.values
内容正确
fontSize.value = appData.values["fontSize"];
一个简单的解决方法是为select
<select id="fontSize">
<option value="18px">18px</option>
<option value="24px">24px</option>
<option value="32px">32px</option>
<option value="36px">36px</option>
<option value="42px">42px</option>
<option value="54px">54px</option>
</select>
18px
24px
32px
36px
42px
54px
我现在将这些控件更改为一个范围。这还能用吗?(不是选项部分)
<select id="fontSize">
<option value="18px">18px</option>
<option value="24px">24px</option>
<option value="32px">32px</option>
<option value="36px">36px</option>
<option value="42px">42px</option>
<option value="54px">54px</option>
</select>