JS+CSS實(shí)現(xiàn)的拖動(dòng)分頁效果實(shí)例
本文實(shí)例講述了JS+CSS實(shí)現(xiàn)拖動(dòng)分頁效果的方法。分享給大家供大家參考。具體實(shí)現(xiàn)方法如下:
<html>
<head>
<title>拖動(dòng)分頁</title>
<meta http-equiv=Content-Type content="text/html; charset=utf-8">
<style>
body{
border:0px;
margin:0px;
overflow:hidden;
background-color:transparent;
}
.page{
position:absolute;
width:700px;
border:1px solid #999;
background-color:#000;
left:425px;
margin-left:-350px;
cursor:default;
z-index:0;
}
ul{
height:320px;
list-style:none;
margin:40px 50px 0px;
padding:0px;
}
li{
width:100%;
height:30px;
line-height:30px;
font-size:14px;
text-align:left;
border-bottom:1px dashed #999;
}
a{
text-decoration:none;
color:#999;
}
a:hover{
font-weight:bold;
}
li span{
float:right;
color:#999;
}
.tip{
display:block;
width:100%;
font-size:12px;
color:#999;
text-align:center;
margin:10px 0px 20px;
}
</style>
</head>
<body onselectstart="return false;">
<script>
function id(obj){
return document.getElementById(obj);
}
var page;
var lm,mx;
var md=false;
var sh=0;
var en=false;
window.onload=function(){
page=document.getElementsByTagName("div");
if(page.length>0){
page[0].style.zIndex=2;
}
for(i=0;i<page.length;i++){
page[i].className="page";
page[i].innerHTML+="<span class=\"tip\">第 "+(i+1)+"/"+page.length+" 頁 提示:左右拖拽翻頁</span>";
page[i].id="page"+i;
page[i].i=i;
page[i].onmousedown=function(e){
if(!en){
if(!e){e=e||window.event;}
lm=this.offsetLeft;
mx=(e.pageX)?e.pageX:e.x;
this.style.cursor="w-resize";
md=true;
if(document.all){
this.setCapture();
}else{
window.captureEvents(Event.MOUSEMOVE|Event.MOUSEUP);
}
}
}
page[i].onmousemove=function(e){
if(md){
en=true;
if(!e){e=e||window.event;}
var ex=(e.pageX)?e.pageX:e.x;
this.style.left=ex-(mx-lm)+350;
if(this.offsetLeft<75){
var cu=(this.i==0)?page.length-1:this.i-1;
page[sh].style.zIndex=0;
page[cu].style.zIndex=1;
this.style.zIndex=2;
sh=cu;
}
if(this.offsetLeft>75){
var cu=(this.i==page.length-1)?0:this.i+1;
page[sh].style.zIndex=0;
page[cu].style.zIndex=1;
this.style.zIndex=2;
sh=cu;
}
}
}
page[i].onmouseup=function(){
this.style.cursor="default";
md=false;
if(document.all){
this.releaseCapture();
}else{
window.releaseEvents(Event.MOUSEMOVE|Event.MOUSEUP);
}
flyout(this);
}
}
}
function flyout(obj){
if(obj.offsetLeft<75){
if( (obj.offsetLeft + 350 - 20) > -275 ){
obj.style.left=obj.offsetLeft + 350 - 20;
window.setTimeout("flyout(id('"+obj.id+"'));",0);
}else{
obj.style.left=-275;
obj.style.zIndex=0;
flyin(id(obj.id));
}
}
if(obj.offsetLeft>75){
if( (obj.offsetLeft + 350 + 20) < 1125 ){
obj.style.left=obj.offsetLeft + 350 + 20;
window.setTimeout("flyout(id('"+obj.id+"'));",0);
}else{
obj.style.left=1125;
obj.style.zIndex=0;
flyin(id(obj.id));
}
}
}
function flyin(obj){
if(obj.offsetLeft<75){
if( (obj.offsetLeft + 350 + 20) < 425 ){
obj.style.left=obj.offsetLeft + 350 + 20;
window.setTimeout("flyin(id('"+obj.id+"'));",0);
}else{
obj.style.left=425;
en=false;
}
}
if(obj.offsetLeft>75){
if( (obj.offsetLeft + 350 - 20) > 425 ){
obj.style.left=obj.offsetLeft + 350 - 20;
window.setTimeout("flyin(id('"+obj.id+"'));",0);
}else{
obj.style.left=425;
en=false;
}
}
}
</script>
<div>
<ul>
<li><span>2009-4-29 02:16</span><a href=#>東方之珠</a></li>
<li><span>2009-4-29 02:16</span><a href=#>??!愛人</a></li>
<li><span>2009-4-29 02:16</span><a href=#>寧靜溫泉</a></li>
<li><span>2009-4-29 02:16</span><a href=#>你的樣子</a></li>
<li><span>2009-4-29 02:16</span><a href=#>戀曲1980</a></li>
<li><span>2009-4-29 02:16</span><a href=#>戀曲1980</a></li>
<li><span>2009-4-29 02:16</span><a href=#>戀曲2000</a></li>
<li><span>2009-4-29 02:16</span><a href=#>亞細(xì)亞的孤兒</a></li>
<li><span>2009-4-29 02:16</span><a href=#>童年</a></li>
</ul>
</div>
<div>
<ul>
<li><span>2009-4-29 02:16</span><a href=#>彈唱詞</a></li>
<li><span>2009-4-29 02:16</span><a href=#>飛車</a></li>
<li><span>2009-4-29 02:16</span><a href=#>東方之珠</a></li>
<li><span>2009-4-29 02:16</span><a href=#>滾滾紅塵</a></li>
<li><span>2009-4-29 02:16</span><a href=#>光陰的故事</a></li>
<li><span>2009-4-29 02:16</span><a href=#>之乎者也</a></li>
<li><span>2009-4-29 02:16</span><a href=#>現(xiàn)象七十二變</a></li>
<li><span>2009-4-29 02:16</span><a href=#>鄉(xiāng)愁四韻</a></li>
<li><span>2009-4-29 02:16</span><a href=#>穿過你的黑發(fā)我的手</a></li>
</ul>
</div>
<div>
<ul>
<li><span>2009-4-29 02:16</span><a href=#>大兵歌</a></li>
<li><span>2009-4-29 02:16</span><a href=#>黃色面孔</a></li>
<li><span>2009-4-29 02:16</span><a href=#>臺(tái)北紅玫瑰</a></li>
</ul>
</div>
</body>
</html>
希望本文所述對(duì)大家的javascript程序設(shè)計(jì)有所幫助。
- js用拖動(dòng)滑塊來控制圖片大小的方法
- JS實(shí)現(xiàn)網(wǎng)頁游戲中滑塊響應(yīng)鼠標(biāo)點(diǎn)擊移動(dòng)效果
- JS實(shí)現(xiàn)左右拖動(dòng)改變內(nèi)容顯示區(qū)域大小的方法
- js實(shí)現(xiàn)div拖動(dòng)動(dòng)畫運(yùn)行軌跡效果代碼分享
- avalon js實(shí)現(xiàn)仿微博拖動(dòng)圖片排序
- JS拖動(dòng)鼠標(biāo)畫出方框?qū)崿F(xiàn)鼠標(biāo)選區(qū)的方法
- JS實(shí)現(xiàn)簡(jiǎn)潔、全兼容的拖動(dòng)層實(shí)例
- JS實(shí)現(xiàn)可縮放、拖動(dòng)、關(guān)閉和最小化的浮動(dòng)窗口完整實(shí)例
- js實(shí)現(xiàn)圖片拖動(dòng)改變順序附圖
- JS響應(yīng)鼠標(biāo)點(diǎn)擊實(shí)現(xiàn)兩個(gè)滑塊區(qū)間拖動(dòng)效果
相關(guān)文章
uniapp小程序點(diǎn)擊輸入框時(shí)阻止彈出軟鍵盤的幾種解決方案
在寫項(xiàng)目時(shí)候需要在表單里面加一個(gè)picker選擇器,但選擇input的時(shí)候軟鍵盤與選擇器會(huì)同時(shí)彈出,下面這篇文章主要給大家介紹了關(guān)于uniapp小程序點(diǎn)擊輸入框時(shí)阻止彈出軟鍵盤的幾種解決方案,需要的朋友可以參考下2024-02-02
javascript學(xué)習(xí)總結(jié)之js使用技巧
本篇文章給大家分享javascript學(xué)習(xí)總結(jié)之js使用技巧,都是精華喔~小伙伴快來學(xué)習(xí)吧。2015-09-09
js實(shí)現(xiàn)做通訊錄的索引滑動(dòng)顯示效果和滑動(dòng)顯示錨點(diǎn)效果
下面小編就為大家?guī)硪黄猨s實(shí)現(xiàn)做通訊錄的索引滑動(dòng)顯示效果和滑動(dòng)顯示錨點(diǎn)效果。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-02-02
IE中鼠標(biāo)經(jīng)過option觸發(fā)mouseout的解決方法
這篇文章主要介紹了IE中鼠標(biāo)經(jīng)過option觸發(fā)mouseout的解決方法,分析了IE中鼠標(biāo)移到option時(shí)window.event.toElement返回值為null的原因及解決方法,需要的朋友可以參考下2015-01-01
js實(shí)現(xiàn)模擬銀行卡賬號(hào)輸入顯示效果
這篇文章主要介紹了js實(shí)現(xiàn)模擬銀行卡賬號(hào)輸入顯示效果,涉及JavaScript正則匹配與字符串操作的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-11-11
腳本吧 - 幻宇工作室用到j(luò)s,超強(qiáng)推薦share.js
腳本吧 - 幻宇工作室用到j(luò)s,超強(qiáng)推薦share.js...2006-12-12

