iOS には現在、この localStorage の問題をまだ修正できないバグがあります。それまでの間、次の 2 つの回避策が考えられます。
クッキー
ドキュメント間で設定を保持する場合は、バグが修正されるまでJavaScript Cookie ( w3schools doc )を使用します。
var settingString = 'mySetting';
var oldValue;
var myCookies = document.cookie.split(';');
for(var i = 0;i < myCookies.length;i++){
var myCookie = myCookies[i].trim();
if(myCookie.indexOf(settingString + "=") == 0){
oldValue = myCookie.substring(settingString + 1,myCookie.length);
}
}
write('oldValue: "' + oldValue + '"');
var d = new Date();
var newValue = d.getHours() + ':' + d.getMinutes() + ':' + d.getSeconds();
var expiry = d.setTime(d.getTime() + (14 * 86400000)); // # milliseconds in a day
document.cookie = settingString + "=" + newValue + "; expires=" + expiry.toGMTString();
write('newValue: "' + newValue + '"');
設定
現在のドキュメントでのみ値を保持するだけで十分な場合は、Office 設定 API ( Office.js 設定オブジェクト doc )を使用できます。
var settingString = 'mySetting';
var oldValue = Office.context.Settings.get(settingString);
write('oldValue: "' + oldValue + '"');
var d = new Date();
var newValue = d.getHours() + ':' + d.getMinutes() + ':' + d.getSeconds();
Office.context.Settings.set(settingString, newValue);
Office.context.Settings.saveAsync(function(asyncResult){
write('newValue: "' + newValue + '"');
});
-Michael Saunders 氏、Office アドイン担当プログラム マネージャー