原生js实现网页顶部自动下拉/收缩广告效果


Posted in Javascript onJanuary 20, 2017

知识要点

1.实现原理:

通过递归改变div的高度值达到缓慢下拉的效果。

2.一共分为3个步骤我写了三个函数

第一个show()函数(下拉):初始值高度h<300的话 h+5  反之return退出停止,调用setTimeout方法30毫秒执行一次+5

第二个hide()函数(收回):只是高度的判断不同高度h-5 反之return退出停止,调用setTimeout方法30毫秒执行一次-5

第三个dd()函数(再次弹出):这里要注意的是第二次弹出的div是一个新的div把它的高度设置为0,实现原理与第一个函数一样,

并且一定要在第二个函数(收回)执行后再执行

完整代码

<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>demo</title>
<style>
body,h1,h2,h3,h4,h5,h6,hr,p,blockquote,dl,dt,dd,ul,ol,li,pre,form,fieldset,legend,button,input,textarea,th,td{margin:0;padding:0;}
h1,h2,h3,h4,h5,h6{font-size:100%;}
address,cite,dfn,em,var{font-style:normal;}
code,kbd,pre,samp{font-family:courier new,courier,monospace;}
ul,ol{list-style:none;}
a{text-decoration:none;}
a:hover{text-decoration:none;}
sup{vertical-align:text-top;}
sub{vertical-align:text-bottom;}
legend{color:#000;}
fieldset,img{border:0;}
button,input,select,textarea{font-size:100%;}
table{border-collapse:collapse;border-spacing:0;}
.clear{clear: both;float: none;height: 0;overflow: hidden;}
#container{width: 600px; margin: 0 auto;}
p{ line-height: 28px; }
.hidden{background: #E6E6E6; text-align: center; height: auto; overflow: hidden;}
.show{ background: #808080;text-align: center; height: 0; overflow: hidden; }
</style> 
</head> 
<body>
 <div id="container">
  <div class="hidden" id="hid"><p>广告图</p></div>
  <div class="show" id="sho"><p>哈哈哈哈改装成功</p></div>
 </div>
 <script type="text/javascript"> 
 window.onload=function aa(){
 show();
 setTimeout("hide()",3000);
 }
 var h=0;
 var hid=document.getElementById("hid");
 var sho=document.getElementById("sho");
 function show(){
 if(h<300){
  h+=5;
  hid.style.height=h+"px";
 }else{
  return;
 }
 setTimeout("show()",30);
 } 
 function hide(){
 if(h>0){
  h-=5;
  hid.style.height=h+"px";
 }else{
  dd();
  return;
 }
 setTimeout("hide()", 30);
 }
 var a=0;
 function dd(){
 if(a<60){
  a+=1;
  sho.style.height=a+"px";
 }else{
  return;
 }
 setTimeout("dd()",30);
 }
 </script>
</body> 
</html>

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
JS 获取span标签中的值的代码 支持ie与firefox
Aug 24 Javascript
JavaScript高级程序设计阅读笔记(六) ECMAScript中的运算符(二)
Feb 27 Javascript
jquery插件lazyload.js延迟加载图片的使用方法
Feb 19 Javascript
基于JS模仿windows文件按名称排序效果
Jun 29 Javascript
javascript数组去重方法分析
Dec 15 Javascript
JS实现根据密码长度显示安全条功能
Mar 08 Javascript
Angular 组件之间的交互的示例代码
Mar 24 Javascript
详解vuex之store源码简单解析
Jun 13 Javascript
JS+DIV实现拖动效果
Feb 11 Javascript
es6中使用map简化复杂条件判断操作实例详解
Feb 19 Javascript
JavaScript实现拖拽效果
Mar 16 Javascript
vant 时间选择器--开始时间和结束时间实例
Nov 04 Javascript
Angular.js中ng-if、ng-show和ng-hide的区别介绍
Jan 20 #Javascript
轻松理解Javascript变量的相关问题
Jan 20 #Javascript
js+css3实现旋转效果
Jan 20 #Javascript
Bootstrap 手风琴菜单的实现代码
Jan 20 #Javascript
浅谈angularjs $http提交数据探索
Jan 20 #Javascript
原生js实现无限循环轮播图效果
Jan 20 #Javascript
原生js实现弹出层效果
Jan 20 #Javascript
You might like
php编写的简单页面跳转功能实现代码
2013/11/27 PHP
PHP判断是否为空的几个函数对比
2015/04/21 PHP
PHP 断点续传实例详解
2017/11/11 PHP
PHP结合Vue实现滚动底部加载效果
2017/12/17 PHP
php面试中关于面向对象的相关问题
2019/02/13 PHP
javascript下有关dom以及xml节点访问兼容问题
2007/11/26 Javascript
Javascript中正则表达式的全局匹配模式分析
2011/04/26 Javascript
IE8对JS通过属性和数组遍历解析不一样的地方探讨
2013/05/06 Javascript
javascript中的=等号个数问题两个跟三个有什么区别
2013/10/23 Javascript
document.getElementById获取控件对象为空的解决方法
2013/11/20 Javascript
js实现图片拖动改变顺序附图
2014/05/13 Javascript
js点击button按钮跳转到另一个新页面
2014/10/10 Javascript
SpringMVC restful 注解之@RequestBody进行json与object转换
2015/12/10 Javascript
jQuery中队列queue()函数的实例教程
2016/05/03 Javascript
Bootstrap基本组件学习笔记之缩略图(13)
2016/12/08 Javascript
使用nodejs爬取前程无忧前端技能排行
2017/05/06 NodeJs
Angular实现点击按钮控制隐藏和显示功能示例
2017/12/29 Javascript
Async/Await替代Promise的6个理由
2019/06/15 Javascript
超详细小程序定位地图模块全系列开发教学
2020/11/24 Javascript
python进阶教程之词典、字典、dict
2014/08/29 Python
简单解析Django框架中的表单验证
2015/07/17 Python
对Python3.6 IDLE常用快捷键介绍
2018/07/16 Python
tensorflow 恢复指定层与不同层指定不同学习率的方法
2018/07/26 Python
python 内置模块详解
2019/01/01 Python
Python+Appium实现自动化测试的使用步骤
2020/03/24 Python
Django 解决上传文件时,request.FILES为空的问题
2020/05/20 Python
CSS3 选择器 伪类选择器介绍
2012/01/21 HTML / CSS
html5绘制时钟动画
2014/12/15 HTML / CSS
印度在线内衣和时尚目的地:Zivame
2017/09/28 全球购物
抽象类和接口的区别
2012/09/19 面试题
优秀教师获奖感言
2014/01/31 职场文书
门面房租房协议书
2014/08/20 职场文书
党员教师四风问题整改措施思想汇报
2014/10/08 职场文书
2014年项目经理工作总结
2014/11/24 职场文书
经济纠纷起诉状
2015/05/20 职场文书
一篇文章了解正则表达式的替换技巧
2022/02/24 Javascript