日期:2014-05-16  浏览次数:20375 次

请高手帮忙看一下JS
本帖最后由 BaLiJieTouDeLiMing 于 2014-01-20 16:05:52 编辑
这个是定位的一个图片 用JS改变的position 的坐标值 才滚动起来的  我想上下滚动 不知道 那块应该如何写请帮忙看下 JS  谢谢 

还有 请高手也帮忙给我深刻解释一下  split(' ')[0]  这个用法   尽量明了点 谢谢~


//预览可看到现在的效果
http://www.huangkesong.cn/positionscroll/piao.html

$(function(){

var cloud = $('.cloud');
//设置背景初始值
cloud.css('backgroundPosition', '0 0px');

var bgscroll = function () {
//获取当前x轴位置
var current = parseInt(cloud.css('backgroundPosition').split(' ')[0]),
//设置新位置    (这个是左右的写法   上下该如何写?    newBgPos = (current - 1)+'px 0px';   )
newBgPos = (current - 1)+'px 0px';

//将变量赋值给css的background-position属性
cloud.css('backgroundPosition', newBgPos);
};

setInterval(bgscroll,75);

})

------解决方案--------------------

<script type="text/javascript">
$(function(){

var cloud = $('.cloud');
//设置背景初始值
cloud.css('backgroundPosition', '0 0px');

var bgscroll = function () {
    //获取当前x轴位置
    var current = parseInt(cloud.css('backgroundPosition').split(' ')[1]),
    //设置新位置
    newBgPos = '0px '+(current - 1) + 'px';

//alert(current);
    //将变量赋值给css的background-position属性
    cloud.css('backgroundPosition', newBgPos);
};


setInterval(bgscroll,75);

})

</script>
<style type="text/css">
.cloud{ width:100%; height:500px; background:url("cloud.gif");}
</style>
</head>

<body>
<div style="background-position: -209px 0px;" class="cloud"></div>
</body>

首先不要设置背景为横向平铺,js改为设置背景y轴坐标就可以了
split是字符串分割函数,可按指定字符来分割字符串,返回值是数组 [0]是取下标为0的值