4

Linux Mint 用にビルドされた Firefox 21 を使用しています。script タグ内から IndexedDB データベースを開こうとすると、InvalidStateError が発生します。ただし、JavaScript コンソールからデータベースを開こうとしても、エラーは発生しません。

次のコードはエラーになります

<html>
    <body>
        <script src="http://code.jquery.com/jquery-1.10.0.min.js"></script>
        <script type="text/javascript">
            $(document).ready(function(){
                indexedDB.open("MyNewDatabase");
            });
         </script>
    </body>
</html>

コンソールに入力indexedDB.open("MyNewDatabase");すると、オブジェクトが正しく返されIDBOpenDBRequestます。この奇妙な動作を引き起こす可能性のあるアイデアはありますか?

Invalid state Error in Firefox for Indexed DbInvalidStateError while open IndexedDB in Firefoxを認識していますが、両方の質問/回答が問題を解決するのに役立ちませんでした。

4

3 に答える 3

2

この返信はおそらく遅すぎて役に立ちませんが、about:config で dom.indexedDB.enabled 設定が true であることを確認しましたか?

Gecko indexedDB のソース コードを読んで、過去にその pref を false に変更したことがあることに気付きました。理由は不明です。

于 2013-08-29T12:49:27.970 に答える
0

indexedDB.open の 2 番目のパラメーターとしてバージョンを渡してみましたか? ウェブ上で見つけたランダムな会話を思い出します。そこでは、オプションではないなどの決定がありました。仕様では、提供されていない場合はデフォルトで 1 になると書かれていると思いますが、少なくとも何が起こるかを確認したい場合があります。

于 2013-05-31T12:42:30.387 に答える
0

Chrome と Firefox では...バージョン番号を含める必要があります。IE10 では...いけません。IE10 はさらにプレフィックス「msIndexedDB」を使用しており、トランザクション列挙の使用も同様に Microsoft と矛盾しています。IE のバージョンによっては、MS プレフィックス付きの列挙値を使用するものもあれば、文字列を使用するものもあります。うーん。

于 2013-10-03T18:57:34.007 に答える