Javascript 视差背景不工作(仅一幅图像)

Javascript 视差背景不工作(仅一幅图像),javascript,html,css,background,parallax,Javascript,Html,Css,Background,Parallax,因此,我看到了一个很好的背景,并认为我自己也希望这样做,因为我运行一个Terraria服务器 所以我在网上搜索了一个函数,这个函数可以使这成为可能。 我尝试过各种方法,但我使用的代码如下: link: http://codepen.io/anon/pen/DCGuz 由于您只能看到顶层的第一个图像移动,我想知道如何使所有图像都如图所示移动。 此外,当我将鼠标移到徽标或网页上时,背景不会移动,而它应该移动 当我将鼠标移到网站上时,它不应该是鼠标移到图像上 PS:当我在我的浏览器中尝试在我的网站全

因此,我看到了一个很好的背景,并认为我自己也希望这样做,因为我运行一个Terraria服务器

所以我在网上搜索了一个函数,这个函数可以使这成为可能。 我尝试过各种方法,但我使用的代码如下:

link:
http://codepen.io/anon/pen/DCGuz
由于您只能看到顶层的第一个图像移动,我想知道如何使所有图像都如图所示移动。 此外,当我将鼠标移到徽标或网页上时,背景不会移动,而它应该移动 当我将鼠标移到网站上时,它不应该是鼠标移到图像上

PS:当我在我的浏览器中尝试在我的网站全屏上移动背景时,它的移动速度相当慢,而且不平滑,但在terraria.org/about上它确实移动得又快又平滑。有没有办法解决这个问题

提前谢谢


编辑:正如你在我的网站上看到的,只有第一个图像移动,而且不平滑。

t.niese已经说过:你创建了所有这些鼠标事件处理程序,但只有最上面的一个被调用

相反,只需使用$window.mousemove一次,然后在那里完成所有工作。此外,每次鼠标移动时,您都会使用jQuery重复查找移动div,这可能会使动画速度减慢一点

通过使用javascript闭包,您可以节省大量键入/复制工作:

以下是建议更改后的外观:

编辑:确保您在自己的网站上使用图像时没有侵犯任何版权


额外的编辑:window.requestAnimationFrame很整洁:

最简单的方法是使用CSS3。基本上,您需要在层的顶部添加层。 退房 这里->翻译成英语 演示-> 在此处找到->

很简单 那就好像


只有最顶层将接收鼠标事件。所以你需要在这一层的事件监听器中做所有的动作。啊,是的,我现在看到了,只有一个问题,那就是动作缓慢,不平滑。我也在尝试另一个脚本,但这些脚本只会像我尝试过的那样横向移动:但我真的不知道如何让它像现在的背景一样工作……是的,我会确保我没有侵犯任何版权:但是,呃,你能看看我发送的脚本吗?我看了。[codepen.io/stefanjudis/pen/nrzHI]?没有JS?我试过上面的代码:但是有一个问题,它不会显示为背景,如果你向下滚动,它就会打开,设置为图像。好的,我已经做好了,但只有一个问题,你可以在我的网站上看到静态背景显示,一旦你向下滚动,你会看到视差效果,它被设置为图像而不是背景?而且它太小了。
    window.onload = function () {
    $ ('# Wool-paralax). WoolParalax ();
    }
    <Div id = "wool-paralax">
    <div class="wool-layer" data-shift="0.02">
    <Img src = "img / 1.png" alt = "" />
    </div>
    <div class="wool-layer" data-shift="0.03">
    <Img src = "img / 2.png" alt = "" />
    </div>
    <div class="wool-layer" data-shift="0.04">
    <Img src = "img / 3.png" alt = "" />
    </div>