javascript – 动态背景滚动

前端之家收集整理的这篇文章主要介绍了javascript – 动态背景滚动前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
这是我要提到的链接http://beckabney.com/test.html

我在使背景图像按照我喜欢的方式工作时遇到了一些麻烦.

我希望背景根据窗口的宽度自动调整大小,它已经正确地执行了.如果你缩小窗口,你会看到背景缩小.

这是问题所在.如果你让你的窗户变宽(短),那么背景会调整大小并变得太高,因此你不能再看到背景的顶部(因为背景位于底部).
当你位于页面顶部时,我希望背景位于顶部位置,当你向下滚动时,它将慢慢移动到底部位置.当您左右移动时,有点像Android手机背景的效果.当然,请记住,当您使窗口变小时,我仍然希望背景自动调整大小.

HTML:

<body>
    <img src="http://i.imgur.com/6d5Cm.jpg" alt="" class="background" />

    <div class="banner">
        <img src="http://i.imgur.com/JptsZ.jpg" alt="" />
    </div>
    <div class="content">
        <div class="innerContent">
            testing
        </div>
    </div>
</body>

CSS:

html
{
    background-color: #70d4e3;
    height: 100%;
}

body
{
    height: 100%;
}

.background
{
    margin-top: 45px;
    width: 100%;
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: -9999;
}

.banner
{
    margin: 0px auto;
    width: 991px;
    margin-bottom: -9px;
}

.content
{
    background: url("http://i.imgur.com/daRJl.png") no-repeat scroll center center transparent;
    height: 889px;
    margin: 0 auto;
    width: 869px;
}

.innerContent
{
    padding: 30px;
}

也许需要一些javascript或jquery来实现这一目标.

解决方法

嗯,这很有趣,谢谢!

我希望你不要介意我冒昧地使用百分比来让我的生活更轻松一点,并且脚本可能稍微强一些,因为我可以可靠地使用百分比浮点数.

我所做的是使布局,html和css符合bg正确动画所需的规则,它们与你所拥有的大致相同.

然后,这只是一个问题,要弄清楚正确的属性所需的计算,以确定你从顶部的百分比,* 20实际上是背景图像以百分比填充的“左”空间量(作为背景高度为80%).

他们将计算移动到一个函数,所以我可以在滚动和窗口调整大小时调用它,确保它在任何以某种方式修改窗口的事件上启动…

没有做广泛的测试,但它在Chrome中工作,我很累:p

我相信这就是你要找的东西:

http://jsfiddle.net/sg3s/RSqrw/15/参见编辑2

如果你想要这个另一种方式arround只是让页面背景从顶部开始并修改

http://jsfiddle.net/sg3s/RSqrw/14/见编辑2

编辑:

作为奖励,因为我从未真正将jquery脚本写成’插件’,所以我决定将其转换为一个.我想出的应该易于实现和使用!

http://jsfiddle.net/sg3s/RSqrw/52/见编辑3

功能在Chrome,Firefox 3.6,IE9兼容模式下成功测试

编辑2:

再次阅读问题检查我是否做得对,我注意到我没有做你想要的,所以我更新了第一个编辑中的链接,它给你一个插件,你可以在其中有几个滚动背景选项.它保留了我的“旧”插入,同时也做了你想做的事情……阅读代码中的注释以获得一些额外的描述.

编辑3:

当我今天去上班时,我很担心我的插件“尝试”有点臃肿.正如你在评论中提到的那样,它并不符合要求.

所以我把它改写成只做你想要的,而不是更多,在Chrome Firefox,IE9 compat等测试过.这个脚本更清洁.

http://jsfiddle.net/sg3s/vZxHW/

如果高度适合窗口,您可以选择使背景粘在顶部或底部.没有别的,但这已经足以做一些非常酷的事情:p

猜你在找的JavaScript相关文章