JS+DIV实现的卷帘效果示例


Posted in Javascript onMarch 22, 2017

本文实例讲述了JS+DIV实现的卷帘效果。分享给大家供大家参考,具体如下:

1、实例代码:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
 <head>
  <title>JS+DIV卷帘效果示例-F-BLOG</title>
  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  <style type="text/css">
    #box{overflow:hidden;height:25px;border:1px solid #666;width:300px;background-color:#ccc;}
    p{padding:0px;margin:0px;line-height:25px;}
    #demo2{overflow:hidden;height:30px;border:1px solid #666;width:400px;background-color:#ff0000;}
    h4{padding:0px;margin:0px;height:30px;line-height:30px;}
   </style>
  <script type="text/javascript">
    function reBox(Fid,defaultHeight,speed){
      var bheight=defaultHeight;
      var doScroll;
      var a=0,b=0;
      var $=function(id){
        return document.getElementById(id);
      }
      var createBox="<div id='"+Fid+"cbox'>"+$(Fid).innerHTML+"</div>";
      $(Fid).innerHTML=createBox;
      $(Fid).onclick=function(){
        if(a==0&&b==0){
          b=1;
          doScroll=setInterval(function(){
            if(bheight<$(""+Fid+"cbox").offsetHeight){
              var dist=Math.ceil(($(""+Fid+"cbox").offsetHeight-bheight)/10);
              bheight=bheight+dist;
              $(Fid).style.height=bheight+"px";
            }else{
              clearInterval(doScroll);
              a=1;
              b=0;
            }
          },speed);
        }
        if(a==1&&b==0){
          b=1;
          doScroll=setInterval(function(){
            if(bheight>defaultHeight){
              var dist=Math.ceil((bheight-defaultHeight)/10);
              bheight=bheight-dist;
              $(Fid).style.height=bheight+"px";
            }else{
              clearInterval(doScroll);
              a=0;
              b=0;
            }
          },speed);
        }
      }
    }
    window.onload=function(){
      reBox("box",25,30);
      reBox("demo2",30,10);
    }
</script>
 </head>
 <body>
  <P>示例一:纵向,目标div:box,默认高度:25px,速度:30毫秒,调用:reBox("box",25,30)</P>
  <div id="box">
    <p>高级Web程序员</p>
    <p>1、了解HTTP协议,对Web程序性能优化有一定经验</p>
    <p>2、精通MySQL数据库,能熟练地运用SQL语言,有丰富的数据建模经验, 熟悉SQL语句调优和数据库调优</p>
    <p>3、熟练使用至少一种版本(CVS,SVN)控制工具</p>
    <p>4、熟悉PHP语言及常见扩展(如mysql、pcre、xml等)</p>
    <p>5、熟悉面向对象(OO)程序设计</p>
  </div>
  <P>示例二:纵向,目标div:demo2,默认高度:30px,速度:10毫秒,调用:reBox("demo",30,10)</P>
  <div id="demo2">
    <h4>数据挖掘工程师</h4>
    <p>1、对海量数据分析、挖掘有浓厚兴趣,沉稳厚重</p>
    <p>2、熟悉PHP、JavaScript、HTML设计开发</p>
    <p>3、了解HTTP协议,对程序性能优化有一定经验</p>
    <p>4、精通MySQL数据库,能熟练地运用SQL语言</p>
  </div>
  <p>PS:从效果看,速度为10毫秒比较好</p>
  <p>By:傅唯一 2009-1-26</p>
 </body>
</html>

2、运行效果图如下:

JS+DIV实现的卷帘效果示例

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
一些不错的js函数ajax
Aug 20 Javascript
javascript 必知必会之closure
Sep 21 Javascript
js动态添加onload、onresize、onscroll事件(另类方法)
Dec 26 Javascript
javascript提取URL的搜索字符串中的参数(自定义函数实现)
Jan 22 Javascript
JavaScript:new 一个函数和直接调用函数的区别分析
Jul 10 Javascript
原生JavaScript+LESS实现瀑布流
Dec 12 Javascript
javascript实现动态改变层大小的方法
May 14 Javascript
JavaScript中两个字符串的匹配
Jun 08 Javascript
vue中promise的使用及异步请求数据的方法
Nov 08 Javascript
ES6知识点整理之模块化的应用详解
Apr 15 Javascript
vue父组件触发事件改变子组件的值的方法实例详解
May 07 Javascript
JS开发自己的类库实例分析
Aug 28 Javascript
Bootstrap页面标题Page Header的实现方法
Mar 22 #Javascript
javascript实现滑动解锁功能
Mar 22 #Javascript
Bootstrap警告(Alerts)的实现方法
Mar 22 #Javascript
bootstrap IE8 兼容性处理
Mar 22 #Javascript
详解angular中通过$location获取路径(参数)的写法
Mar 21 #Javascript
jQuery+ThinkPHP+Ajax实现即时消息提醒功能实例代码
Mar 21 #jQuery
Linux使用Node.js建立访问静态网页的服务实例详解
Mar 21 #Javascript
You might like
了解Joomla 这款来自国外的php网站管理系统
2010/03/11 PHP
jquery 插件 人性化的消息显示
2008/01/21 Javascript
js 操作css实现代码
2009/06/11 Javascript
jQuery 翻牌或百叶窗效果(内容三秒自动切换)
2012/06/14 Javascript
jquery实现的带缩略图的焦点图片切换(自动播放/响应鼠标动作)
2013/01/23 Javascript
Jquery 监视按键,按下回车键触发某方法的实现代码
2014/05/11 Javascript
使用Plupload实现直接上传附件至七牛云存储
2014/12/26 Javascript
JS交换变量的方法
2015/01/21 Javascript
Bootstrap每天必学之附加导航(Affix)插件
2016/04/25 Javascript
利用Jquery队列实现根据输入数量显示的动画
2016/09/01 Javascript
AngularJS  $on、$emit和$broadcast的使用
2016/09/05 Javascript
javascript实现鼠标点击页面 移动DIV
2016/12/02 Javascript
Node.js利用Net模块实现多人命令行聊天室的方法
2016/12/23 Javascript
nodejs+express实现文件上传下载管理网站
2017/03/15 NodeJs
jQuery实现的动态文字变化输出效果示例【附演示与demo源码下载】
2017/03/24 jQuery
Vue实现百度下拉提示搜索功能
2017/06/21 Javascript
vue.js删除列表中的一行
2018/06/30 Javascript
详解在React.js中使用PureComponent的重要性和使用方式
2018/07/10 Javascript
详解小程序rich-text对富文本支持方案
2018/11/28 Javascript
如何阻止小程序遮罩层下方图层滚动
2019/09/05 Javascript
使用Layer组件弹出多个对话框(非嵌套)与关闭及刷新的例子
2019/09/25 Javascript
nodejs实现百度舆情接口应用示例
2020/02/07 NodeJs
ES6 async、await的基本使用方法示例
2020/06/06 Javascript
JS图片懒加载技术实现过程解析
2020/07/27 Javascript
jQuery实现简单评论区功能
2020/10/26 jQuery
vue3使用vue-count-to组件的实现
2020/12/25 Vue.js
Python request设置HTTPS代理代码解析
2018/02/12 Python
python执行精确的小数计算方法
2019/01/21 Python
python plt可视化——打印特殊符号和制作图例代码
2020/04/17 Python
Python计算信息熵实例
2020/06/18 Python
学生吸烟检讨书
2014/09/14 职场文书
计划生育汇报材料
2014/12/26 职场文书
教师考核表个人总结
2015/02/12 职场文书
2015年学生会个人工作总结
2015/04/09 职场文书
教师“一帮一”结对子活动总结
2015/05/07 职场文书
详解Java实践之适配器模式
2021/06/18 Java/Android