2011-11-21 3 views
1

Это немного необычный запрос, поскольку я знаю, что есть плагины там, чтобы позиционировать элементы вдоль кривой Безье, однако по целому ряду причин, по которым я не пойду в, эти методы не применимы для этого приложения.Как позиционировать элементы как кривые с помощью jQuery .each()

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

Как так: -

O 
O 
O 
O 
O 
O 
    O 

мне нужно хранить число элементов в переменной с помощью .size()

И из этого числа выполнить расчет, чтобы отработать Css оставил имущество, зависит по индексу элемента.

Математика, к сожалению, не моя сильная сторона, и я зацикливаюсь на используемой формуле, и как бы я продолжал выполнять итерации через элементы с помощью jQuery .each() и применять изменения css для каждого элемента.

Число элементов будет динамически меняться, поэтому в формулу должны быть включены как количество элементов, так и индекс каждого элемента.

Может ли кто-нибудь дать мне хотя бы отправную точку относительно того, как я буду идти без кодирования в jQuery? (или используя аддон позиции в jqueryUI)

+0

См. Обновление к моему ответу. (скрипка) – Neal

ответ

2

Это немного сложнее. но вам необходимо убедиться, что все элементы имеют следующее положение:

relative, absolute, или fixed, чтобы разместить их так.

Что-то вроде этого: http://jsfiddle.net/maniator/PPRKF/

+0

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

+0

@gordyr см. Пример, который я только что добавил. – Neal

+0

Фантастический! Какое простое решение ... Большое вам спасибо. Хотя это не совсем кривая, это будет хорошо для моего приложения, и я уверен, что могу изменить свой код здесь, чтобы получить нужный мне результат. Как только я смогу, я приму ответ. Ваша помощь очень ценится. – gordyr

1

Там на самом деле плагин JQuery, чтобы сделать именно это jCurvy

Fiddle Demo


Он даже поставляется с хорошим дизайном интерфейса для генерации кодов точек для вас как вы хотите здесь http://jcurvy.com/design.html?design=1

Просто перетащите test1, test9, а красный 1/2 указывает на форму кривой, как вы хотите, и код генерируется выше для использования с плагином.

+0

Спасибо за это предложение Jeff .... Кривая действительно намного лучше и будет именно тем, что я хочу, однако этот плагин также изменяет положение высоты элементов в зависимости от того, как многие из них приводят к различиям. Возможно, я могу совать в коде и изменить его. – gordyr

+0

Простой ... Я изменил плагин, и теперь он делает именно то, что я хочу. Красивый. Я чувствую, что должен покинуть Нила с «ответом», хотя он прямо ответил на мой вопрос, хотя ваше решение - это то, с чем я в конечном итоге ушел. Надеюсь, все в порядке. Большое спасибо за вашу помощь! – gordyr

+0

Без проблем, рад помочь. –

Смежные вопросы