我正在尝试使用jQuery使DOM对象遵循循循环径.
到目前为止,我试图通过重新安排一个简单的公式来确定一个圆来找到路径,所以在伪代码中:
x =无论如何.
y = abs(sqrt(常数)-x)
这是我到目前为止:
$(window).on('scroll', function()
{
//get intitial ratio
vRatio = (sky.dHeight - sky.height ) / (sky.height - 100)
hRatio = (sky.dHeight - sky.height ) / (sky.width - 100)
rawX = $(window).scrollTop() / hRatio;
x = rawX - sky.width/2;
y = Math.abs(Math.sqrt(sky.width/2) - x);
console.log(x)
console.log(y)
sun.ob.css({left : rawX, top: y})
})
目前,它遵循的是三角形路径,而不是我用眼睛寻找的温和的圆形流动.
只是为了给出一些上下文,这是一个视差风格的文档,其中高度是px高的000(因此比率).
解决方法:
为你做了这个小提琴 – 在向下滚动时使用一些CSS旋转:
$(window).scroll(function () {
var scrollAmount = $(window).scrollTop();
var documentHeight = $(document).height() - $(window).height();
var scrollPercent = (scrollAmount / documentHeight);
var r = 180 * scrollPercent;
TweenMax.to($('#orbit'), 0.5, {
rotation: r
});
});
应该适用于任何窗口大小.