1

ドラッグしたアイテムを数秒間押し続けた後、4〜5秒後にOVER関数ブロックが呼び出されるようにしたいのですが、 それ以外の場合はOVER関数ブロックを呼び出す必要があります。

$('.treeLink').droppable({
    tolerance: 'pointer',
    accept: '.childLinks',
    over: function() {},
    over: function() {
        getTreeLinks($(this).attr('id').split("treeLink")[1]);
    },
    drop: function() {
        updateGovLinks($(this).attr('id'));
    }
});
4

1 に答える 1

1

おそらく、ある種のタイムアウトを使用することをお勧めします。

var timeout;
$('.treeLink').droppable({
    tolerance: 'pointer',
    accept: '.childLinks',
    over: function() {
        var self = this;
        timeout = setTimeout(function () {
             getTreeLinks($(self).attr('id').split("treeLink")[1])
        }, 4000);
    },
    out: function () {
        clearTimeout(timeout);
    },
    drop: function() {
        updateGovLinks($(this).attr('id'));
    }
});
于 2012-11-28T06:37:18.300 に答える