Попытка заставить перетаскиваемый элемент (jQuery) обновить элемент формы, с противоречивыми результатами - PullRequest
1 голос
/ 27 ноября 2011

http://www.por7al.com/drag_test.html

Вот простая демонстрация, это простой перетаскиваемый элемент jQuery, который использует обратный вызов перетаскивания, чтобы обновить элемент формы с абсолютной позицией перетаскиваемого элемента.

Работает нормально, но когда вы делаете тонкие движения назад и вперед между привязками сетки, иногда элемент формы не обновляется, по крайней мере, в Chrome и Safari на Mac.

Я мог бы, вероятно, вставить обратный вызов остановки, но мне нужно, чтобы он точно обновлялся при перетаскивании, есть идеи?

соответствующие коды:

$( "#draggable" ).draggable({
    axis: "y" ,
    grid: [5,5],

    drag: function(event, ui) {
    var t=$('#draggable').offset().top;

    $('#fm').val(t);
         }
    });

});

Чтобы воссоздать ошибку, медленно перемещайтесь назад и вперед между привязками сетки и наблюдайте за элементом формы. Перетаскиваемый div ограничен осью Y. Любая помощь с благодарностью!

1 Ответ

1 голос
/ 27 ноября 2011

Помогает ли это вообще, если вы используете ui.position.top вместо повторного выбора элемента?

$("#draggable").draggable({
    axis: "y",
    grid: [5, 5],

    drag: function(event, ui) {
        var t = ui.position.top;

        $('#fm').val(t);
    }
});
...