Анимированное смещение элемента по событию
Всем добрый вечер! Только начал изучать jQuery. Прошу помощи в следующем. Есть несколько флагов, расположеных по дуге. Слева и справа дуги - стрелки. Соответсвенно, при нажатии на левую стелку флаги должны анимироваться на одну позицию влево, при нажатии правой стрелки - соответсвенно вправо. При смещении влево справа появляется его копия и наоборот.
Я так понял, алгоритм будет следующим. 1. Вычисляем координаты флагов использую .position(). 2. При клике стреки меняю позицию с одной в другую, использую .animate(position). 3. Если флаг выходит за пределы координат, то используешь клон флага (т.е сместил все, один не поместился, клоню в переменную, удаляю текущую, на свободное место вывожу клон флага и меняю позицию. Правильно ли я построил алгоритм? Если да, помогите с реалиацией, так как практика программирования на JS отсутсвует. Если нет, помогите построить правильный алгоритм и реализовать его на практике. Заранее спасибо! Вот мой HTML+CSS: <div class="slider"> <div class="arrow left"></div> <div class="slides"> <div id="de"><a href=""><img src="pictures/Flags/Germany.png" alt="Немецкий"><span>Немецкий</span></a></div> <div id="es"><a href=""><img src="pictures/Flags/Spain.png" alt="Испанский"><span>Испанский</span></a></div> <div id="it"><a href=""><img src="pictures/Flags/Italy.png" alt="Итальянский"><span>Итальянский</span></a></div> <div id="en"><a href=""><img src="pictures/Flags/UK.png" alt="Английский"><span>Английский</span></a></div> <div id="fr"><a href=""><img src="pictures/Flags/France.png" alt="Французский"><span>Французский</span></a></div> <div id="nl"><a href=""><img src="pictures/Flags/Netherlans.png" alt="Голландский"><span>Голландский</span></a></div> </div> <div class="arrow right"></div> </div> Код:
.slider { position: absolute; top: 135px; left: 150px; } |
На css3 transitions:
<iframe width="100%" height="300" src="http://jsfiddle.net/danya_postfactum/uL94vgqa/embedded/" allowfullscreen="allowfullscreen" frameborder="0"></iframe> Сделал наспех. |
Спасибо большое! В коде мне нужно использовать функцию .animate(). Можете помочь в этом?
|
Цитата:
transition не умеют только старые браузеры. Но даже в них все будет работать, только без анимации ) По-моему это хороший вариант. |
Причем можно, запросто сделать скрипт без использования jQuery. Хотя если в проекте используются другие скрипты, требующие jQuery, то это мало смысла имеет.
|
Скрипт хорош, я и не спорю. Но у меня в задании требование использовать .animate() :-?
|
Часовой пояс GMT +3, время: 04:06. |