js實現(xiàn)帶按鈕的上下滾動效果
更新時間:2015年05月12日 15:40:10 作者:vivi
這篇文章主要介紹了js實現(xiàn)帶按鈕的上下滾動效果,設計javascript鼠標事件及頁面元素樣式的相關(guān)操作技巧,需要的朋友可以參考下
本文實例講述了js實現(xiàn)帶按鈕的上下滾動效果。分享給大家供大家參考。具體實現(xiàn)方法如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>js帶按鈕上下滾動效果</title>
<style type="text/css">
ul{
margin:0;
padding:0;
list-style:none;
height:100000px;
}
li{
margin:0;
padding:0;
width:100px;
height:100px;
display:block;
float:top;
margin-bottom:5px;
background:#009900;
}
#img_bag{
width:110px;
height:600px;
background:#F2F2F2;
margin:0 auto;
text-align:center;
}
#img_bag #img{
width:100px;
height:525px;
background:#969696;
overflow:hidden;
margin:auto;
}
</style>
</head>
<body>
<div id="img_bag">
<a href="javascript:void(0)" onmousedown="moveTop()">
<img src="upp.jpg" border="0" /></a>
<div id="img">
<ul>
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
<li>6</li>
<li>7</li>
<li>8</li>
<li>9</li>
<li>10</li>
<li>11</li>
<li>12</li>
</ul>
</div>
<a href="javascript:void(0)" onmousedown="moveBottom()">
<img src="down.jpg" border="0" /></a>
</div>
<script type="text/javascript">
function $(obj){
//獲取指定對象
return document.getElementById(obj);
}
var maxHeight=$("img").getElementsByTagName("ul")[0].getElementsByTagName("li").length*105;
//滾動圖片的最大高度
var targety = 211;
//一次滾動距離
var dx;
var a=null;
function moveTop(){
var le=parseInt($("img").scrollTop);
if(le>211){
targety=parseInt($("img").scrollTop)-211;
}else{
targety=parseInt($("img").scrollTop)-le-1;
}
scTop();
}
function scTop(){
dx=parseInt($("img").scrollTop)-targety;
$("img").scrollTop-=dx*.3;
clearScroll=setTimeout(scTop,50);
if(dx*.3<1){
clearTimeout(clearScroll);
}
}
function moveBottom(){
var le=parseInt($("img").scrollTop)+211;
var maxL=maxHeight-600;
if(le<maxL){
targety=parseInt($("img").scrollTop)+211;
}else{
targety=maxL
}
scBottom();
}
function scBottom(){
dx=targety-parseInt($("img").scrollTop);
$("img").scrollTop+=dx*.3;
a=setTimeout(scBottom,50);
if(dx*.3<1){
clearTimeout(a)
}
}
</script>
</body>
</html>
運行效果如下所示:

希望本文所述對大家的javascript程序設計有所幫助。
相關(guān)文章
微信小程序開發(fā)自定義tabBar實戰(zhàn)案例(定制消息99+小紅心)
一定的需求情況下無法使用小程序原生的tabbar的時候,需要自行實現(xiàn)一個和tabbar功能一模一樣的自制組件,下面這篇文章主要給大家介紹了關(guān)于微信小程序開發(fā)自定義tabBar(定制消息99+小紅心)的相關(guān)資料,需要的朋友可以參考下2022-12-12
Next.js應用轉(zhuǎn)換為TypeScript方法demo
這篇文章主要為大家介紹了Next.js應用轉(zhuǎn)換為TypeScript方法demo,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-12-12
讓網(wǎng)頁根據(jù)不同IE版本顯示不同的內(nèi)容
在上一篇blog 《IE8里判斷當前網(wǎng)頁顯示模式》里面提到IE有不同的顯示模式以及如何用Javascript 來動態(tài)判定。 Web開發(fā)者可以根據(jù)不同顯示模式導入不同的內(nèi)容。2009-02-02

