SoFunction
Updated on 2025-04-03

Common JS effects of image deceleration scrolling implementation code


<!DOCTYPE html>
<html>
<head>
<meta charset="gb2312" />
<title>Image deceleration scrolling (by rentj1@;)</title>
<style>
ul{ margin:0; padding:0}
ul{ list-style:none;}
body{font:12px/1.2 "Stick"; }
.scroll_box{ position:relative; height:164px; width:766px; border:1px solid #efefef; overflow:hidden;}
.scroll_box .list{ overflow:hidden; zoom:1; position:absolute;}
.scroll_box .list li{ width:235px; height:164px; padding:0 10px; text-align:center; float:left;}
.scroll_box .list .info{ line-height:1.5}
</style>
</head>
<body>
<div class="scroll_box" >
<ul class="list" >
<li>
<img src="http://img14./n4/4587/" />
<div class="info">
Bingnitu, Environmentally friendly large-enclosed special car special foot pads, Beige (for special car, only support online payment) Accurate version Large-enclosed special
</div>
<span class="price">Member price: ¥288.00</span>
</li>
<li>
<img src="http://img11./n4/309/" />
<div class="info">
Bingnitu, Environmentally friendly large-enclosed special car special foot pads, Beige (for special car, only support online payment) Accurate version Large-enclosed special
</div>
<span class="price">Member price: ¥288.00</span>
</li>
<li>
<img src="http://img10./n4/8792/" />
<div class="info">
Bingnitu, Environmentally friendly large-enclosed special car special foot pads, Beige (for special car, only support online payment) Accurate version Large-enclosed special
</div>
<span class="price">Member price: ¥288.00</span>
</li>
<li>
<img src="http://img12./n4/285/" />
<div class="info">
Bingnitu, Environmentally friendly large-enclosed special car special foot pads, Beige (for special car, only support online payment) Accurate version Large-enclosed special
</div>
<span class="price">Member price: ¥288.00</span>
</li>
<li>
<img src="http://img12./n4/1957/" />
<div class="info">
Bingnitu, Environmentally friendly large-enclosed special car special foot pads, Beige (for special car, only support online payment) Accurate version Large-enclosed special
</div>
<span class="price">Member price: ¥288.00</span>
</li>
<li>
<img src="http://img10./n4/2314/" />
<div class="info">
Bingnitu, Environmentally friendly large-enclosed special car special foot pads, Beige (for special car, only support online payment) Accurate version Large-enclosed special
</div>
<span class="price">Member price: ¥288.00</span>
</li>
</ul>
</div>
<script>
untils = {
getComputedStyle: function(elem,syle){
var computedStyle =
&&
&& (elem,null);
if(!computedStyle){
computedStyle =
}
return computedStyle[syle]
},
setStyle: function(elem, name,val){
[name] = val;
},
get: function(id){
(id)
}
}
function ScrollSlider(container, content){
var clone = (true);
var initcss= "left:0; top:0";
var contentHeight = ;
var containerHeight = ;
= "content-clone";
(clone);
("cssText", initcss);
("cssText", initcss);
= contentHeight+"px";
= content;
= clone;
= container;
= containerHeight;
= contentHeight;
}
= {
start: function(delay){
var _this = this;
clearInterval(_this.timer);
_this.timer = setInterval(function(){
_this.scroll();
},delay);
},
scroll: function(){
var marginTop = parseInt((, "marginTop"));
var offsetTop = ;
if(isNaN(marginTop))return;
if( -marginTop >= ){
marginTop = ;
}
if(marginTop > 0){
offsetTop = -offsetTop;
}
(marginTop, offsetTop);
},
move: function(marginTop, offsetTop){
var s = , s1 = 0, _this = this, m = 0;
var timer = setInterval(function(){
var speed = (s-s1)/8;
speed = speed > 0 ? (speed) : (speed);
s1 += speed;
m = marginTop - s1;
(_this.content, "marginTop", m + "px");
(_this.clone, "marginTop", (m + offsetTop)+"px");
if(s-s1 <= 0){
clearInterval(timer);
}
},30);
}
};
var container = ("container")
var content = ("content")
var xx = new ScrollSlider(container, content);
(1000*3);
/*
//s=1/2 * at^2
//s (att)/2
//0<s<164
0,-164,-328,164,0
328,164,0,-164,-328,164,0
*/
</script>
</body>
</html>