如何使用jQuery .each()将元素定位为曲线

时间:2011-11-21 20:29:30

标签: jquery jquery-ui

这是一个稍微不同寻常的请求,因为我知道有一些插件可以沿着贝塞尔曲线定位元素,但由于各种原因我不会参与,这些方法不适用于此应用程序。

我需要使用jQuery每个函数迭代一组元素,并模拟从左到右弯曲到左边的曲线。

像这样: -

  O
 O
O
O
O
 O
  O

我需要使用.size()

存储变量中的元素数量

从这个数字执行计算以计算出css left属性,具体取决于元素的索引。

数学是不幸的不是我的强项,我坚持使用的公式,以及如何使用jQuery .each()迭代元素并将css更改应用于每个元素。

元素的数量将动态变化,这就是为什么元素的数量和每个元素的索引都需要包含在公式中。

任何人都可以至少给我一个关于如何在jQuery中编写这个代码的起点吗? (或使用jqueryUI中的位置插件)

2 个答案:

答案 0 :(得分:2)

有点复杂。但你需要确保所有元素都有一个位置:

relativeabsolutefixed,以便将其定位。

像这样:http://jsfiddle.net/maniator/PPRKF/

答案 1 :(得分:1)

实际上有一个jQuery插件可以执行此jCurvy

Fiddle Demo


它甚至还带有一个漂亮的设计界面,可以生成点代码,让您按照自己想要的方式对元素进行曲线http://jcurvy.com/design.html?design=1

只需拖放test1test9和红色1 / 2点,即可根据需要调整曲线形状,并在上方生成代码以供使用用插件。