ie9的ydn-db问题:SCRIPT5007:无法获取属性的值' XMLDocument&#39 ;:对象为null或未定义

时间:2014-10-15 17:54:17

标签: html5 indexeddb ydn-db

我正在使用ydn-db构建一个可以在mutliple borwsers和设备中脱机工作的测试应用程序。

我的第一个选择是使用indexedDB,但后来我意识到并非所有浏览器和设备都支持它。

因此,经过一些研究,我决定转移到ydn-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或未定义。

你有什么问题可以解决这个问题吗?

我使用的是最新版本的ydn-db,因为它位于网站http://dev.yathit.com/ydn-db/downloads.html中。

我下载了以下模块: IndexedDb,WebSql,Webstorage,Userdata,Query

1 个答案:

答案 0 :(得分:0)

XMLDocument,仅在较旧的IE中可用(在IE9中具有兼容模式?)用于在DOM节点上使用UserData存储机制保存数据。详情请见UserDataXMLDocument

IE9应该使用WebStorage(localStorage)。也可以试试IE6或IE7。你会得到更好的画面。

因此某些机制检测被搞砸了。如果您有更多详细信息,我可以提供帮助。