0

私は少し助けを探しています。

ログイン成功時にユーザーをリダイレクトするJavaScriptログインページがあります(サーバーからのJSON応答に基づいて)。

常に ajax リクエストを発行するのではなく、サイト全体で使用するために indexeddb に大量のデータを追加できるようにしたいと考えています。ただし、ログイン スクリプトは、すべてのデータがデータベースに保存される前にユーザーをリダイレクトします。(かなり多いかもしれません。)

次のように応答オブジェクトをループしています。

var lookup = $.indexedDB("atlas").objectStore("Lookup");
lookup.clear();
$.each(obj, function(){
    lookup.add(this);
});

上記の全体がいつ完了したかを検出できる方法はありますか?

4

3 に答える 3

0

私はプラグインに精通していませんが、indexeddb 仕様で作業する場合、トランザクションで完全なコールバックが発生します。これは、トランザクションが完了してコミットされたときに呼び出されます。

于 2012-10-17T07:00:05.980 に答える
0

紛らわしい IndexedDB API の使用を容易にするために、小さな jquery プラグイン (まだ非常にアルファ版) を作成しました。

https://github.com/ameyms/jquery-indexeddb

そして、私は API を非常にシンプルに保つように努めました。

//Define and initialize an IndexedDB ...
var db = $.idb({
                    name:'foobar', 
                    version: 2,
                    drop: stores_to_be_deleted,
                    stores:list_of_stores
                });

// ... Add objects to a store
db.put(items, 'into_store').done(onsuccess);

//.. And delete objects from a store
db.remove('from_store', conditionFunc).done(onremoval);

//.. And not to forget fetching objects from a store
db.select('from_my_store', conditionFunc).done(function (items){

    console.log(items)
});

気に入っていただければ幸いです。

于 2013-09-23T08:47:07.957 に答える