0

ここに私の奇妙な問題があります。

基本的に画像を移動したり、回転したり、削除したりできる単純な「画像のプレーヤー/エディター」があります。プレーヤーは画像の json リストを繰り返し処理し、連続した配列 (0、1、2、3、...) を作成して、位置を追跡できるようにします。左矢印キーと右矢印キーは、画像の位置を取得するためにシーケンシャル配列に送信される +1 または -1 の動きに割り当てられます。

すべて素晴らしい。写真IDを取得し、$ .postを送信してDBから画像を削除し、jsonリストから削除してから、更新jsonリストから順次配列を再作成する削除アクションにDを割り当てました。これがキッカーです。D を押すと、json リストからアイテムを削除し、DB を更新します。次に、シーケンシャル配列を再作成すると、次のアクションと戻るアクション (左矢印キー、右矢印キー) が D ボタンを押すたびに +1 を追加し始めます。

要するに。新しく始めると、数字は1、2、3、4、5になります...削除を押すと、数字は7、9、11、13と続きます...もう一度削除を押すと、16、19、 21、24、...など...これがどこで再バインドされているのかわかりません...または何か不足していますか?

コードはこちら

var items = {"a1046229":{"id":"1046229","file_path":"\/2013\/05\/2177\/11\/600x500\/92909a26e6b3cd2ad96d4c6977bd9e74.jpg","raw_path":"\/2013\/05\/2177\/11\/92909a26e6b3cd2ad96d4c6977bd9e74.jpg","pos":1},"a1046230":{"id":"1046230","file_path":"\/2013\/05\/2177\/11\/600x500\/edd7996f61c135764c2a9e19444c308b.jpg","raw_path":"\/2013\/05\/2177\/11\/edd7996f61c135764c2a9e19444c308b.jpg","pos":2}.....

シーケンシャル配列を作成する関数は次のとおりです

function _prepare_images() {
    if (!imgList.length) {
        var name, pos = 0;
        for (name in items) {
            imgList.push({
                id: items[name].id,
                info: items[name],
                pos: pos++
            });
        }
    }
}

Dを押すと、実際のリストから削除します

delete items['a' + image.data('id')];
imgList.length = 0;

したがって、次または前を押すと、imgListが再作成されます...しかし、スキップし始めます...

私は無知です。誰でも助けてくれませんか

4

0 に答える 0