zoukankan      html  css  js  c++  java
  • Web API (scroll系列)、(仿淘宝侧边栏效果实现)、(mouseenter与mouseover的区别)、(动画的原理)、(缓动动画)

    一 、三大系列中的scroll系列 :

    (1)scrollLeft |  scrollTop  ;水平   |   垂直方向滚动出去的距离  ;

    (2)scrollWidth |  scrollHeight   ;内容的真是宽度  |  高度   ;

    3)滚动整个页面的时候  :   window . pageYOffset   ; 

    二 、仿淘宝侧边栏效果实现 :

    1.  找到关心的元素对象  :

    (1)banner区域  元素对象  ;

    (2)侧边栏的元素对象   ;

    (3)主体部分元素对象  ;

    2.获取banner区域以及主体部分距离顶部的距离   offsetTop

    3.给document注册scoll滚动事件  ;

    (1)通过window.pageYOffset  来拿到滚动出去的距离 ;

    (2)判断这个滚动出去的距离是否大于等于banner元素距离顶部的距离  ;

       a :如果大于等于 ,让侧边栏修改定位模式为fixed 同时修正一下 top 的偏移量  ;

       b :如果小于 ,让侧边栏修改定位模式为absolute ,修正一下top的偏移量  ;

    (3)判断这个滚动出去的距离是否大于等于main元素距离顶部的距离  ;

       a :如果大于等于 ,需要让文本进行显示 ;

       b :如果小于 ,需要让文本进行隐藏  ;

     

    三 、mouseenter 与 mouseover的区别 :

    (1)mouseenter 不会进行事件冒泡  ;

    (2)mouseover   会进行事件冒泡  ;

     

    四 、动画的原理 :

    (1)利用定时器setlnterval ,在定时器函数中 ,先获取到当前盒子的位置 ,

       然后加上移动的距离 ,最后把这个值设置给当前元素的偏移量就好  。

     

     

    五 、缓动动画 :

    (1)非匀速动画  ;

    (2)公式来实现  :

          a:var step = (目标位置 - 当前盒子的位置)/ 10 

          b:把这个step + 盒子当前的位置 , 就是最后要设置给盒子的偏移量  ;

     

     

     

  • 相关阅读:
    checked、disabled在原生、jquery、vue下不同写法
    大白话理解闭包及相关笔试题
    reduce多种方法计算数组中某个值的出现次数
    js原生_获取url键值对
    弹窗和遮罩层的显示隐藏及空白区域关闭
    tab选项卡切换(js原生、jQuery )
    大白话理解this
    js---通过arguments来获取指定参数
    js-字符串方法
    登录linux,输入ls显示anaconda-ks.cfg cobbler.ks ....., 原因在于root@ ~ / 区别
  • 原文地址:https://www.cnblogs.com/piyangtao/p/11562157.html
Copyright © 2011-2022 走看看