前几天在gayadesign上看到了一个颇有意思的效果,自己就模范写了一个。

背景图片,可以自己更改,我这里面使用了《air》和《最终幻想7》的壁纸,嘿嘿,欢迎动漫爱好者交流。
由于使用的是png,不支持IE6。
制作教程:
创建一个文字遮罩图片:
使用ph0toshop制作图片如下:

图层关系如下:

创建如下html页面,引入jquery库还有动画增强插件easing,还有最重要的,务必引入jquery.backgroundPosition.js
backgroundPosition插件用于修正背景图片无法使用动画的问题。
- <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script>
- <script type="text/javascript" src="jquery.easing.1.3.js"></script>
- <script type="text/javascript" src="jquery.backgroundPosition.js"></script>
- <div class="scrollBg">
- <img src='mask.png' alt='RIA之家' width="500" height="109" />
- </div>
- <div id="scrollBg2" class="scrollBg">
- <img src='mask.png' alt='RIA之家' width="500" height="109" />
- </div>
创建2个图片容器,里面为遮罩图片,就是文字图片
样式如下:
- body {background-color: #000000;}
- .scrollBg {
- background-image: url(bg.jpg);
- background-color: #000000;
- width: 500px;
- height: 109px;
- }
- .scrollBg img {display: block;}
- #scrollBg2{background-image: url(bg2.jpg);}
js代码如下
- $(document).ready(function() {
- moveBgAround('.scrollBg');
- });
- /**
- *移动背景
- */
- function moveBgAround(applyTo,x,y) {
- var _applyTo = applyTo;
- var _maxX = x || 1000;
- var _maxY = y || 700;
- //随机移动距离
- var x = Math.floor(Math.random()*_maxX);
- var y = Math.floor(Math.random()*_maxY);
- //随机速度
- var time = Math.floor(Math.random()*1001) + 2000;
- //让背景开始移动
- $(_applyTo).animate({
- backgroundPosition: '(' + (x * -1) + 'px ' + (y * -1) + 'px)'
- }, time, "swing", function() {
- //回调函数
- moveBgAround(_applyTo,_maxX,_maxY);
- });
- }
脚本很短,有不明白的地方可以给我留言。

囧~代码多了点~
这文章的图片挂了 演示也挂了 不知道是不是我的网速不行的原因~
……..不是你的网速问题,而是的确是挂了……
demo已经修复了,图片找不回来了,没办法修复了。