Web API (scroll系列)(仿淘宝侧边栏效果实现)(mouseenter与mouseover的区别)(动画的原理)(缓动动画)

Posted piyangtao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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 + 盒子当前的位置 , 就是最后要设置给盒子的偏移量  ;

 

 

 

以上是关于Web API (scroll系列)(仿淘宝侧边栏效果实现)(mouseenter与mouseover的区别)(动画的原理)(缓动动画)的主要内容,如果未能解决你的问题,请参考以下文章

元素scroll系列属性

元素scroll系列属性

ASP.NET Core Web API + Angular 仿B站 目的分析以及创建 WebAPI + Angular7 项目

React Native之ViewPagerAndroid仿淘宝首页顶部分类布局效果实现

淘宝API开发系列:淘宝api接口接入说明

仿淘宝商品菜单