主要结构如下,样式的话这里就不给出来了,已经是横排显示:<body>
<div class="main-box">
<div class="top" id="rank_top">
<div class="name"> <span id="rank_type">排行榜</span></div>
<div class="paihang-box" id="rankList_container" >
<div style="position: relative; width: 1360px;" id="rank_scroll_parent">
<div id="show_rank" style="position: absolute; left:0px;width: 11400px">
<div id="clone_rank_1" style="display: block; width: 228px;">
<img src="" style="width: 88px; height: 108px;"/>
</div>
<div id="clone_rank_2" style="display: block; width: 228px;">
<img src="" style="width: 88px; height: 108px;"/>
</div>
<div id="clone_rank_3" style="display: block; width: 228px;">
<img src="" style="width: 88px; height: 108px;"/>
</div>
<div id="clone_rank_4" style="display: block; width: 228px;">
<img src="" style="width: 88px; height: 108px;"/>
</div>
</div>
</div>
</div>
</div>
</div>
</body>
下面是我自己的代码,但是这样跑,每一轮跑完以后会隔开的宽度是$("#rank_scroll_parent").css("width"),达不到无缝的要求
function Scroll_RankData(){
$("#show_rank").css("left",$("#rank_scroll_parent").css("width"));//取父级元素的宽度为默认偏移位置
var contenLength=$("#show_rank").width();
var scrollRank=function(){
var position_leftStr=$("#show_rank").css("left");
var position_left=position_leftStr.substring(0,position_leftStr.length-2);
if(position_left< -contenLength){
$("#show_rank").css("left",$("#rank_scroll_parent").css("width"));
var position_leftStr=$("#show_rank").css("left");
}else{
var p = position_left-20;
$("#show_rank").css("left",p+'px')
}
}
this.startRank=function(){
timer=setInterval(scrollRank,20);
}
}
网上查了些无缝的资料,自己又重新写了写,没有弄出来,
麻烦各路高手指点迷津 或者直接的来点代码也行JavaScriptJqueryHtml
<div class="main-box">
<div class="top" id="rank_top">
<div class="name"> <span id="rank_type">排行榜</span></div>
<div class="paihang-box" id="rankList_container" >
<div style="position: relative; width: 1360px;" id="rank_scroll_parent">
<div id="show_rank" style="position: absolute; left:0px;width: 11400px">
<div id="clone_rank_1" style="display: block; width: 228px;">
<img src="" style="width: 88px; height: 108px;"/>
</div>
<div id="clone_rank_2" style="display: block; width: 228px;">
<img src="" style="width: 88px; height: 108px;"/>
</div>
<div id="clone_rank_3" style="display: block; width: 228px;">
<img src="" style="width: 88px; height: 108px;"/>
</div>
<div id="clone_rank_4" style="display: block; width: 228px;">
<img src="" style="width: 88px; height: 108px;"/>
</div>
</div>
</div>
</div>
</div>
</div>
</body>
下面是我自己的代码,但是这样跑,每一轮跑完以后会隔开的宽度是$("#rank_scroll_parent").css("width"),达不到无缝的要求
function Scroll_RankData(){
$("#show_rank").css("left",$("#rank_scroll_parent").css("width"));//取父级元素的宽度为默认偏移位置
var contenLength=$("#show_rank").width();
var scrollRank=function(){
var position_leftStr=$("#show_rank").css("left");
var position_left=position_leftStr.substring(0,position_leftStr.length-2);
if(position_left< -contenLength){
$("#show_rank").css("left",$("#rank_scroll_parent").css("width"));
var position_leftStr=$("#show_rank").css("left");
}else{
var p = position_left-20;
$("#show_rank").css("left",p+'px')
}
}
this.startRank=function(){
timer=setInterval(scrollRank,20);
}
}
网上查了些无缝的资料,自己又重新写了写,没有弄出来,
麻烦各路高手指点迷津 或者直接的来点代码也行JavaScriptJqueryHtml
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货