论坛交流
首页办公自动化| 网页制作| 平面设计| 动画制作| 数据库开发| 程序设计| 全部视频教程
应用视频: Windows | Word2007 | Excel2007 | PowerPoint2007 | Dreamweaver 8 | Fireworks 8 | Flash 8 | Photoshop cs | CorelDraw 12
编程视频: C语言视频教程 | HTML | Div+Css布局 | Javascript | Access数据库 | Asp | Sql Server数据库Asp.net  | Flash AS
当前位置 > 文字教程 > Javascript教程
Tag:验证,特效,入门,实例,验证,表单,特效,正则表达式,跑马灯,document,函数,代码,getElementByID,菜单,图片,视频教程

拖拽翻页效果的实现

文章类别:Javascript | 发表日期:2010-1-28 13:20:38

<html>
<head>
<title>blog</title>
<meta http-equiv=content-type content="text/html; charset=gb2312">
<style>
body{
 border:0px;
 margin:0px;
 overflow:hidden;
 background-color:transparent;
 font-family:宋体;
}
.page{
 position:absolute;
 width:700px;
 border:1px solid #999;
 background-color:#000;
 left:425px;
 margin-left:-350px;
 cursor:default;
}
ul{
 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 p=0;
var lm,mx;
var md=false;
window.onload=function(){
 page=document.getElementsByTagName("div");
 for(i=0;i<page.length;i++){
  page[i].id="page"+i;
  page[i].style.zIndex=page.length-i;
  page[i].onmousedown=function(e){
   if(!e){e=e||window.event;}
   lm=this.offsetLeft;
   mx=(e.pageX)?e.pageX:e.x;
   this.style.cursor="w-resize";
   this.style.filter="alpha(opacity=80)";
   this.style.opacity=0.8;
   md=true;
//   this.setCapture();
  }
  page[i].onmousemove=function(e){
   if(md){
    if(!e){e=e||window.event;}
    var ex=(e.pageX)?e.pageX:e.x;
    this.style.left=ex-(mx-lm)+350;
   }
  }
  page[i].onmouseup=function(){
   this.style.cursor="default";
   this.style.filter="";
   this.style.opacity=1;
   md=false;
//   this.releaseCapture();
   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;
   for(i=0;i<page.length;i++){
    page[i].style.zIndex+=1;
   }
   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;
   for(i=0;i<page.length;i++){
    page[i].style.zIndex+=1;
   }
   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;
  }
 }
 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;
  }
 }
}
</script>
<div class=page>
 <ul>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>东方之珠</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>啊!停不住的爱人</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>宁静温泉</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>你的样子</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>恋曲1980</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>恋曲1990</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>恋曲2000</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>亚细亚的孤儿</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>伴侣</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>童年</a></li>
 </ul>
 <span class=tip>第 1/8 页 提示:左右拖拽翻页</span>
</div>
<div class=page>
 <ul>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>爱的箴言</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>爱人同志</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>思念</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>母亲</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>是否</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>牧童</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>青春舞曲</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>蒲公英</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>未来的主人翁</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>如今才是唯一</a></li>
 </ul>
 <span class=tip>第 2/8 页 提示:左右拖拽翻页</span>
</div>
<div class=page>
 <ul>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>暗恋</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>弹唱词</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>飞车</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>东方之珠</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>滚滚红尘</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>光阴的故事</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>之乎者也</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>现象七十二变</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>乡愁四韵</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>穿过你的黑发我的手</a></li>
 </ul>
 <span class=tip>第 3/8 页 提示:左右拖拽翻页</span>
</div>
</body>
</html>
4.13 更新版
<html>
<head>
<title>blog</title>
<meta http-equiv=content-type content="text/html; charset=gb2312">
<style>
body{
 border:0px;
 margin:0px;
 overflow:hidden;
 background-color:transparent;
 font-family:宋体;
}
.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-9 12:35</span><a href=http://www.oern.cn>东方之珠</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>啊!停不住的爱人</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>宁静温泉</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>你的样子</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>恋曲1980</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>恋曲1990</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>恋曲2000</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>亚细亚的孤儿</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>伴侣</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>童年</a></li>
 </ul>
</div>
<div>
 <ul>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>爱的箴言</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>爱人同志</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>思念</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>母亲</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>是否</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>牧童</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>青春舞曲</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>蒲公英</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>未来的主人翁</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>如今才是唯一</a></li>
 </ul>
</div>
<div>
 <ul>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>暗恋</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>弹唱词</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>飞车</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>东方之珠</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>滚滚红尘</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>光阴的故事</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>之乎者也</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>现象七十二变</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>乡愁四韵</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>穿过你的黑发我的手</a></li>
 </ul>
</div>
<div>
 <ul>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>大兵歌</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>歌</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>黄色面孔</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>台北红玫瑰</a></li>
  <li><span>2009-4-9 12:35</span><a href=http://www.oern.cn>我所不能了解的事</a></li>
 </ul>
</div>
</body>
</html>
1.修正了 IE 下链接拖拽的 Bug
2.修正了多页同时拖拽的 Bug
3.修正了 一页不满 10 个标题时的页号定位错误,并将页号修改为自动添加
4.将 统一向后翻页,修改为 左拖拽前翻页、右拖拽后翻页

下一步的目标是
1.精简飞入飞出时的冗余代码
2.增加自定义页面样式功能
3.检查并修正可能的内存泄漏 Bug


上一篇:JS版组织结构图 人气:5374
下一篇:超漂亮的仿腾讯弹出层效果 人气:3204
视频教程列表
文章教程搜索
 
Javascript推荐教程
Javascript热门教程
看全部视频教程
购买方式/价格
购买视频教程: 咨询客服
tel:15972130058