Перемещение объектов, нужен совет

php5

Новичок
Перемещение объектов, нужен совет

Наваял тут небольшой скрипт по перемещению объекта по вертикали с позиционированием относительно других объектов скрипт вроде бы работает как нужно но при быстром перемежении начинает глючить. Может кто посмотрит и подскажет выход , но я так подозреваю что дело в том что скрипт не успевает перебрать массив объектов function minsize(obj)

http://www.phpclub.ru/paste/index.php?show=1853
 

beba

Новичок
Как то недавно нактнулся в нете, может поможет..
очень проста в использовании...

http://www.walterzorn.com/dragdrop/dragdrop_e.htm
 

php5

Новичок
За ссылку конечно спасибо но как перемещать объект я знаю, меня интересует как сделать
Позиционирования перемещаемого объекта относительно других таких же объектов
Типа того что происходит при перетаскивании блоков на
http://www.netvibes.com/
 

Alexandre

PHPПенсионер
по наступлению события "отпустили" осуществляется проверка координат перетаскиваемого объекта, далее перебором выбирается точка наименьшего расстояния для заданных "контентных зон". После этого объект притягивается к той или иной контент зоны.

По окончанию (т.е. когда уже вычислили номер контент-зоны) - используется аджакс, отправляется на сервер номер контент зоны, которая закрепляется в профиле пользователя.

В ощем здесь строчек на 100- 200 яваскрипта получается

-~{}~ 15.08.07 12:44:

примеры притягиваний можно посмотреть на сайте Тёмы Лебедава
 

php5

Новичок
Alexandre, то что вы сказали я и так уже понял и реализовал в скрипте на который я дал ссылку в самом начале http://www.phpclub.ru/paste/1853 , если вы посетили сайт http://www.netvibes.com/ то вы могли там заметить что когда перемещаемый обьект находиться над контрольной зоной то для него освобождается место при этом событие отпустить не было при перемещении того же обьекта дальше вычисляется новая точка наименьшего расстояния и т.д . В своем скрипите я это тоже реализовал но при быстром перемещении перетаскиваемого объекта
Скрипт начинает глючить неправильно определяя новое место положения перетаскиваемого обьекта, как я подозреваю это происходит из-за того что при каждом движении мышки я вызываю функцию minsize(obj) которая определяет точку наименьшего расстояние возможно из-за того что перетаскиваемый обьект быстро перемещается эта функция не успевает корректно определить точку наименьшего расстояния ? Может можно как либо сделать так что бы перетаскивать обьект можно было с определенной скоростью ?
 

dimagolov

Новичок
php5, у меня вроде как все успевает отработать дажк когда мышь деграю очень быстро.
Скорее всего проблема не в том, что не успевает определить ближайшее место, а в том, что при этом перерисовывается место под перемещение, и если в процессе перерисовки начать перерисовку еще раз или просто определение координат, то тут и начнуться проблемы.

предложений 2:
1. выставляйте флаг когда начинаете определять координаты и снимайте (причем с задержкой в 5-10 мс) если перерисовали дизайн или убедились, что он остается как есть.
2. пока флаг стоит только тащим объект, ничего не меняем и не вычисляем.
 

ustas

Элекомист №1
alekciy
если бы не изобретали, мы бы по деревьям ездили.
при скорости больше 40 миль в час человек умрет, земля плоская, сколько не велосипедов тебе перечислить.
 

HraKK

Мудак
Команда форума
этот пост схавал мой моск.
ustas сегодня в ударе.

ЗЫ Идем в темку про евал)
 
Сверху