Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Перемещение объектов, нужен совет 
:(
    Опции темы
php5
Дата 15.8.2007, 10:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 272
Регистрация: 15.8.2007

Репутация: нет
Всего: нет



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

Исходный код

Присоединённый файл ( Кол-во скачиваний: 9 )
Присоединённый файл  data.rar 12,38 Kb
PM MAIL   Вверх
12345c
Дата 15.8.2007, 16:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Круглый
****


Профиль
Группа: Vingrad developer
Сообщений: 2018
Регистрация: 26.12.2005
Где: наша не пропадала ?

Репутация: 57
Всего: 101



1) для кроссбраузерности надо пользоваться .top, .left, а не .pixelTop, ... и в конце писать +'px';
2) не вдавался далеко в алгоритм, но похоже, что ошибка в том, что Вы предполагаете, что событие наступит в каждой точке и приведёт к перестановке объектов. На самом деле, когда мышь проскакивает высоту рисунка без событий - тут и ошибка. Лечение: перепишите так, чтобы алгоритм не исходил из этого предположения, расставлял рисунки, как будто в первый раз взялся за это дело.


--------------------
Google Code Playground - онлайн-отладка своих примеров HTML+JS без регистрации, с сохранением по URL, без кириллицы. Go
PM WWW   Вверх
php5
Дата 15.8.2007, 17:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 272
Регистрация: 15.8.2007

Репутация: нет
Всего: нет



12345c, не совсем понятно данное предложение «На самом деле, когда мышь проскакивает высоту рисунка без событий - тут и ошибка». 
При каждом движении мыши я вычисляю точку наименьшего расстояния для каждого объекта   поэтому по идеи я не могу проскочить высоту рисунка без события или я что то не так понял ?  smile 

PM MAIL   Вверх
12345c
Дата 15.8.2007, 18:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Круглый
****


Профиль
Группа: Vingrad developer
Сообщений: 2018
Регистрация: 26.12.2005
Где: наша не пропадала ?

Репутация: 57
Всего: 101



Когда событие не срабатывает, то по рисунку видно, что затем обрабатывается только один соседний рисунок, на который выполнилось условие "выше-ниже", а не пересматриваются позиции всех рисунков. Сделайте, чтобы расставлялись все. Например, 3-й быстро тащишь вверх, чтобы 1 и 2 не сдвинулись, потом медленно вниз. Прыгает 1 на место 2, а 2 не прыгает на место 3. Алгоритм должен проверять правильность положения всех. (Ввести массив занятости мест; если занимаемое занято - двигать занимающий куда следует. В общем, совсем по-другому устроить алгоритм.)

И надо позаботиться об невыделении selection при таскании. Как сделано здесь, например: http://js2.ru/example/JsPrimeryCode-56.htm

Это сообщение отредактировал(а) 12345c - 3.3.2008, 11:39


--------------------
Google Code Playground - онлайн-отладка своих примеров HTML+JS без регистрации, с сохранением по URL, без кириллицы. Go
PM WWW   Вверх
php5
Дата 16.8.2007, 10:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 272
Регистрация: 15.8.2007

Репутация: нет
Всего: нет



12345c, а как определить когда нужно начать двигать в низ 1 на место 2, а 2 на место 3 ?
 Или это уже действия при конечном положении передвигаемого объекта т.е пропущен шаг когда 3 объекта оказывается на месте 2 и тот передвигается на место 3.


PM MAIL   Вверх
12345c
Дата 17.8.2007, 14:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Круглый
****


Профиль
Группа: Vingrad developer
Сообщений: 2018
Регистрация: 26.12.2005
Где: наша не пропадала ?

Репутация: 57
Всего: 101



Это уже чисто алгоритмический вопрос. Я бы сделал массив, хранящий целые числа (номера рисунков) и отображающий положение дел с расстановкой предметов. По нему определяете, что куда двигать, и тогда пропуск некоторых щonmousemove не страшен.
PM WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0607 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.