0

私は ydn-db を使用して、複数のブラウザとデバイスでオフラインで動作するテスト アプリを構築しています。

私の最初のオプションは indexedDB を使用することでしたが、すべてのブラウザーとデバイスがそれをサポートしているわけではないことに気付きました。

そこで、いくつかの調査の後、ydn-db に移行することにしました。

これを行うことでdbを初期化しています:

var dbSchema = {
version: DB_VERSION,
//autoSchema: true,
stores: [{
  name: DB_STORE_USERS_NAME,
  autoIncrement: false, // optional.
  indexes: [{
    name: 'login', // optional
    keyPath: 'login',
    unique: true,
    multiEntry: false
  }]
 }, {
  name: DB_STORE_REPOS_NAME,
  autoIncrement: false, // optional.
  indexes: [{
    name: 'userid', // optional
    keyPath: 'owner.id',
    unique: false
  }]
}]
};

db = new ydn.db.Storage(DB_NAME, dbSchema);

これは chrome では正常に動作しますが、ie9 でテストすると次のエラーが発生します。

SCRIPT5007: プロパティ 'XMLDocument' の値を取得できません: オブジェクトが null または未定義です。

ここで何が問題になるかの手がかりはありますか?

サイトhttp://dev.yathit.com/ydn-db/downloads.htmlにある最新バージョンの ydn-db を使用しています。

次のモジュールをダウンロードしています: IndexedDb、WebSql、Webstorage、Userdata、Query

4

1 に答える 1

0

XMLDocument、古い IE でのみ利用可能 (IE9 の互換モード?) は、DOM ノードの UserData ストレージ メカニズムを使用してデータを永続化するために使用されます。UserDataXMLDocumentの詳細を参照してください。

IE9 では、代わりに WebStorage (localStorage) を使用する必要があります。また、IE6 または IE7 で試してみてください。より良い画像が得られます。

そのため、どこかでメカニズムの検出が台無しになっています。詳細な情報をお持ちでしたら、お役に立てるかもしれません。

于 2014-10-16T00:42:46.770 に答える