实现网页滚动时的动画,wow.js,wow.js兼容不运行问题

实现网页滚动时的动画效果

做一下前端页面滚动效果,如何快速实现滚动页面的时候会看到各式各样的元素动画效果,定制仔细喜欢的css动态效果

前期准备

1、插件 wow.js ,点击下载

2、CSS插件 animate.min.css,点击下载

说明:WOW.js 依赖 animate.css,所以它支持 animate.css 多达 60 多种的动画效果,能满足您的各种需求。

使用说明

1、引入文件

<link rel="stylesheet" href="css/animate.min.css">
<script src="js/wow.js"></script>

2、HTML填写所需 class 名

<div class="wow slideInLeft"></div>
<div class="wow slideInRight"></div>

属性:

data-wow-duration(动画持续时间)

data-wow-delay(动画延迟时间)

例子:

<div class="wow slideInLeft" data-wow-duration="2s" data-wow-delay="5s"></div>
<div class="wow slideInRight" data-wow-offset="10"  data-wow-iteration="10"></div>

3、Javascript

var wow = new WOW(
  {
    boxClass:     'wow',      // 动画元素 css 类(默认是 wow)
    animateClass: 'animated', // 动画 css 类(默认为 animated)
    offset:       0,          // 触发动画时到元素的距离(默认为 0)
    mobile:       true,       // 在移动设备上触发动画(默认为 true)
    live:         true,       // 作用于异步加载的内容(默认为 true)
    callback:     function(box) {
      // 每次启动动画时都会触发回调
      // 传入的参数是动画的 DOM 节点
    },
    scrollContainer: null // 可选滚动容器选择器,否则使用窗口
  }
);
wow.init();

如何解决兼容问题或者滚动后效果不生效,又或者空白问题

1、在wow.js中,源代码491-499行如下(具体行数可能有出入),主要是这个函数

WOW.prototype.isVisible = function(box) {
    var bottom, offset, top, viewBottom, viewTop;
    offset = box.getAttribute('data-wow-offset') || this.config.offset;
    viewTop = window.pageYOffset;
    viewBottom = viewTop + Math.min(this.element.clientHeight, this.util().innerHeight()) - offset;
    top = this.offsetTop(box);
    bottom = top + box.clientHeight;
    return top <= viewBottom && bottom >= viewTop;
};

换成一下内容

WOW.prototype.isVisible = function(box) {
    var bottom, offset, top, viewBottom, viewTop;
    offset = box.getAttribute('data-wow-offset') || this.config.offset;
    viewTop = (this.config.scrollContainer && this.config.scrollContainer.scrollTop) || window.pageYOffset||document.body.scrollTop;
    viewBottom = viewTop + Math.min(this.element.clientHeight, this.util().innerHeight()) - offset;
    top = this.offsetTop(box);
    bottom = top + box.clientHeight;
    return top <= viewBottom && bottom >= viewTop;
};

实际上是换了 viewTop

补充1:

 将    false    改为   true文章来源地址https://www.toymoban.com/diary/web/183.html

Util.prototype.addEvent = function(elem, event, fn) {
      if (elem.addEventListener != null) {
        return elem.addEventListener(event, fn, false);
      } else if (elem.attachEvent != null) {
        return elem.attachEvent("on" + event, fn);
      } else {
        return elem[event] = fn;
      }
};

到此这篇关于实现网页滚动时的动画,wow.js,wow.js兼容不运行问题的文章就介绍到这了,更多相关内容可以在右上角搜索或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

原文地址:https://www.toymoban.com/diary/web/183.html

如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请联系站长进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用
上一篇 2023年08月19日 16:45
下一篇 2023年08月19日 16:45

相关文章

  • h5网站开发,页面加载wow.js动画时,出现了左右滚动条,怎么解决?

    如下图所示,页面在加载WOW动画时出现了左右滚动条: 使用CSS样式来隐藏滚动条 在CSS文件中添加以下样式:

    2024年02月10日
    浏览(30)
  • uniapp - 实现动态且 “可重复“ 开启与关闭动画,由 JS 点击 / 长按等事件控制开启 “某个元素“ 的 CSS 动画(类似常见的点赞动画效果可以一直重复触发动画)兼容 H5 App 小程序

    如果您是 Vue.js / Nuxt.js 等项目,请访问 这篇文章。 本文实现了 uniapp 全端兼容,在函数内用 JS 让一个元素(DOM),“重复执行” 写好的 CSS 动画,类似点赞动画一样, 你可以直接复制示例源码,稍微改改(写上你想要的动画,换个元素就行)就能应用到您的项目中去, 如下图

    2023年04月08日
    浏览(49)
  • Three.js 进阶之旅:滚动控制模型动画和相机动画 ?

    声明:本文涉及图文和模型素材仅用于个人学习、研究和欣赏,请勿二次修改、非法传播、转载、出版、商用、及进行其他获利行为。 专栏上篇文章《Three.js 进阶之旅:页面*滑滚动-王国之泪》 讲解并实现了如何使用 R3F 进行页面图片*滑滚动,本文内容在上节的基础上,学习

    2024年02月06日
    浏览(40)
  • 解决Blender在Unity中动画导入不兼容的问题

    如果你在blender中建立了一个模型,创建了相应的动画和其他东西,导出成FBX文件可能会发现在unity中并不存在animation。 提供一个解决方案: 1.首先选中你要导入的带有相应动画的物体,然后点击文件,导出成FBX文件。 2.勾选选中的物体 3.点击烘焙动画然后再导出。  4.导入到

    2024年02月03日
    浏览(67)
  • unity实现数字滚动动画效果

    要在 Unity 中实现数字滚动动画效果,你可以使用以下步骤: 创建一个新的 Unity 项目。 在场景中添加一个 UI 文本控件。 在 C# 脚本中,使用 coroutine 实现动画效果。 在每一帧中更新 UI 文本的数字,并通过计算得出下一个数字的位置。 在动画结束后,使用 StopCoroutine 停止动画

    2024年02月10日
    浏览(34)
  • 运行 `npm install` 时的常见问题与解决方案

    描述: 运行 npm install 时,可能会遇到网络连接问题,导致无法正常下载依赖包。 报错示例: npm ERR! network connection timed out npm ERR! connect ETIMEDOUT npm ERR! getaddrinfo EAI_AGAIN 解决方案: 确保你的计算机已连接到互联网。可以尝试打开浏览器,访问其他网页来确认网络连接正常。 检

    2024年02月07日
    浏览(52)
  • 实现对一个元素的滚动条进行平滑滚动至顶部的动画效果

    1.elementUI中的平滑滚动至顶部的动画效果代码 2.将上面的代码简化 3.继续简化代码 使用 Element.scrollTo 方法并使用 scroll-behavior: smooth 的简化代码示例: 首先,在你的CSS样式表中加入以下代码: 这会将平滑滚动的效果应用到整个页面。 然后,使用 scrollTo 方法在JavaScript中触发滚

    2024年02月11日
    浏览(31)
  • CSS实现文本和图片无限滚动动画

    Demo图如下:

    2024年01月24日
    浏览(54)
  • 膜拜!用最少的代码却实现了最牛逼的滚动动画!

    大家好,我是 程序视点 的小二哥!今天小二哥带领大家学习如何使用最少的代码创建令人叹为观止的滚动动画~ 在聊 ScrollTrigger 插件之前我们先简单了解下 GSAP 。 GreenSock 动画平台 (GSAP) 可为 JavaScript 可以操作的任何内容(CSS 属性、SVG、React、画布、通用对象等)动画化,并

    2024年02月14日
    浏览(31)
  • webpack处理js兼容性问题之core-js

    过去我们使用 babel 对 js 代码进行了兼容性处理,其中使用 @babel/preset-env 智能预设来处理兼容性问题。 它能将 ES6 的一些语法进行编译转换,比如箭头函数、点点点运算符等。但是如果是 async 函数、 promise 对象、数组的一些方法 (includes) 等,它没办法处理。 所以此时我们

    2024年02月09日
    浏览(34)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包