js仿360开机效果


Posted in Javascript onDecember 26, 2019

本文实例为大家分享了js仿360开机效果的具体代码,供大家参考,具体内容如下

实现效果:

1.点击关闭图片按钮先往下退出再往右退出

实现步骤:

1.封装运动函数
2.给图片上的关闭设置一个盒子
3.给关闭盒子注册点击事件点击后
4.下面图片高度为0,设置一个缓动动画
5.上面图片宽度为0,设置一个缓动动画

缓动动画代码(带回调函数):`

function getStyle(obj,attr){ //兼容性写法获得样式
        if(window.getComputedStyle){ 
          return window.getComputedStyle(obj, null)[attr];
        }else{
          return obj.currentStyle[attr];
        }
      }
       function animate(obj, json, speed, callback){
        clearInterval(obj.timer);
        obj.timer = setInterval(function(){
          var flag = true;
          for(var attr in json){
          var current = parseInt(getStyle(obj,attr));
          var step = (json[attr] - current) / 10;
           step = step > 0 ? Math.ceil(step) : Math.floor(step);
           obj.style[attr] = current + step +'px';
          if(current != json[attr]){
            flag = false;
          }
        }
         if(flag){ 
          clearInterval(obj.timer);
          if(callback && typeof callback == 'function'){ //验证callback是否传递,传递的话看是否是函数类型
           callback();
          }
         }
        },speed);
      }

开机图片,的由两个图片中组成

<!DOCTYPE html>
<html>
<head lang="en">
  <meta charset="UTF-8">
  <title></title>
  <style>
    .box{
      width: 322px;
      position: fixed;
      bottom:0;
      right:0;
    }
    span{
      position: absolute;
      top:0;
      right:0;
      width:30px;
      height: 20px;
      cursor: pointer;
    }
    .box img{
      vertical-align: top;
    }
  </style>
  <script type="text/javascript" src="函数封装.js"></script>
  <script type="text/javascript">
    function $(id){
      return document.getElementById(id);
    }
    window.onload = function(){
      var span = document.getElementsByTagName('span')[0];
      var box = $('box');
      var bottom = $('bt');
      var top = $('hd');
      span.onclick = function(){
        var json = {"height": 0};
        animate(bottom,json,20,function(){
        animate(box,{"width":0},20);
        });
      }
    }
  </script>
</head>
<body>
<div class="box" id="box">
  <span></span>
  <div class="hd" id="hd">
    <img src="images/t.jpg" alt=""/>
  </div>
  <div class="bd" id="bt">
    <img src="images/b.jpg" alt=""/>
  </div>
</div>
</body>
</html>

效果:

js仿360开机效果

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript的9个陷阱及评点分析
May 16 Javascript
JavaScript基础知识之数据类型
Aug 06 Javascript
javascript的document.referrer浏览器支持、失效情况总结
Jul 18 Javascript
jquery中val()方法是从最后一个选项往前读取的
Sep 06 Javascript
JavaScript如何实现组合列表框中元素移动效果
Mar 01 Javascript
JS如何设置cookie有效期为当天24点并弹出欢迎登陆界面
Aug 04 Javascript
Angular项目从新建、打包到nginx部署全过程记录
Dec 09 Javascript
React传值 组件传值 之间的关系详解
Aug 26 Javascript
在vue中阻止浏览器后退的实例
Nov 06 Javascript
js实现限定区域范围拖拉拽效果
Nov 20 Javascript
三剑客:offset、client和scroll还傻傻分不清?
Dec 04 Javascript
js删除指定位置超链接中含有百度与360的标题
Jan 06 Javascript
element-ui中按需引入的实现
Dec 25 #Javascript
原生JS实现顶部导航栏显示按钮+搜索框功能
Dec 25 #Javascript
jQuery+PHP+Ajax实现动态数字统计展示功能
Dec 25 #jQuery
解决Vue 刷新页面导航显示高亮位置不对问题
Dec 25 #Javascript
Vue 路由间跳转和新开窗口的方式(query、params)
Dec 25 #Javascript
如何基于JS截获动态代码
Dec 25 #Javascript
通过微信公众平台获取公众号文章的方法示例
Dec 25 #Javascript
You might like
通用PHP动态生成静态HTML网页的代码
2010/03/04 PHP
Laravel 5 学习笔记
2015/03/06 PHP
php使用Jpgraph绘制复杂X-Y坐标图的方法
2015/06/10 PHP
PHP面向对象程序设计中的self、static、parent关键字用法分析
2019/08/14 PHP
jQuery 开天辟地入门篇一
2009/12/09 Javascript
JQuery选择器特辑 详细小结
2012/05/14 Javascript
js判断是否为ie的方法小结
2014/01/13 Javascript
页面按钮禁用与解除禁用的方法
2014/02/19 Javascript
javascript 闭包详解
2015/07/02 Javascript
jQuery拖拽排序插件制作拖拽排序效果(附源码下载)
2016/02/23 Javascript
基于javascript实现文字无缝滚动效果
2016/03/22 Javascript
EasyUi 打开对话框后控件赋值及赋值后不显示的问题解决办法
2017/01/19 Javascript
jQuery+ThinkPHP+Ajax实现即时消息提醒功能实例代码
2017/03/21 jQuery
canvas简单快速的实现知乎登录页背景效果
2017/05/08 Javascript
switchery按钮的使用方法
2017/12/18 Javascript
Vue多种方法实现表头和首列固定的示例代码
2018/02/02 Javascript
React中this丢失的四种解决方法
2019/03/12 Javascript
详解JavaScript的变量
2019/04/04 Javascript
vue获取验证码倒计时组件
2019/08/26 Javascript
js实现网页版贪吃蛇游戏
2020/02/22 Javascript
nodejs制作小爬虫功能示例
2020/02/24 NodeJs
PyQt5 QTable插入图片并动态更新的实例
2019/06/18 Python
python使用docx模块读写docx文件的方法与docx模块常用方法详解
2020/02/17 Python
Python如何读写字节数据
2020/08/05 Python
python dict如何定义
2020/09/02 Python
CSS3的文字阴影—text-shadow的使用方法
2012/12/25 HTML / CSS
基于HTML5的齿轮动画特效
2016/02/29 HTML / CSS
美国环保妈妈、儿童和婴儿用品购物网站:The Tot
2019/11/24 全球购物
采购内勤岗位职责
2013/12/10 职场文书
大学活动总结格式
2014/04/29 职场文书
办理房产过户的委托书
2014/09/14 职场文书
2014年作风建设工作总结
2014/10/29 职场文书
团委工作总结2015
2015/04/02 职场文书
国博复兴之路观后感
2015/06/02 职场文书
攻击最高的10只幽灵系神奇宝贝,坚盾剑怪排第一,第五最为可怕
2022/03/18 日漫
Python基本知识点总结
2022/04/07 Python