iis服务器助手广告广告
返回顶部
首页 > 资讯 > 前端开发 > JavaScript >原生js如果实现类似fullpage的单页/全屏滚动效果
  • 317
分享到

原生js如果实现类似fullpage的单页/全屏滚动效果

2024-04-02 19:04:59 317人浏览 薄情痞子
摘要

小编给大家分享一下原生js如果实现类似fullpage的单页/全屏滚动效果,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!前言单页

小编给大家分享一下原生js如果实现类似fullpage的单页/全屏滚动效果,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

前言

单页/全屏滚动页面越来越常见了,它多用于产品介绍、招聘等内容较少的简单页面。针对这种效果也出现了不少 Jquery 插件,本文实现的效果类似于fullpage的单屏滚动,使用原生JS实现,不依赖任何js库;

css代码:

html,body {height:100%;}
body {margin:0px;}
div {height:100%;}

html代码:

<div ></div>
<div ></div>
<div ></div>
<div ></div>

js代码:

document.addEventListener("DOMContentLoaded", function() {
 var body = document.body,
 html = document.documentElement;
 var itv, height = document.body.offsetHeight;
 var page = scrollTop() / height | 0;
 //窗口大小改变事件
 addEventListener("resize", onresize, false);
 onresize();
 //滚轮事件
 document.body.addEventListener(
 "onwheel" in document ? "wheel" : "mousewheel",
 function(e) {
  clearTimeout(itv);
  itv = setTimeout(function() {
  var delta = e.wheelDelta / 120 || -e.deltaY / 3;
  page -= delta;
  var max = (document.body.scrollHeight / height | 0) - 1;
  if (page < 0) return page = 0;
  if (page > max) return page = max;
  move();
  }, 100);
  e.preventDefault();
 }
 );
 //平滑滚动
 function move() {
 var value = height * page;
 var diff = scrollTop() - value;
 (function callee() {
  diff = diff / 1.2 | 0;
  scrollTop(value + diff);
  if (diff) itv = setTimeout(callee, 16);
 })();
 };
 //resize事件
 function onresize() {
 height = body.offsetHeight;
 move();
 };
 //获取或设置scrollTop
 function scrollTop(v) {
 if (v == null) return Math.max(body.scrollTop, html.scrollTop);
 else body.scrollTop = html.scrollTop = v;
 };
});

以上是“原生js如果实现类似fullpage的单页/全屏滚动效果”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网JavaScript频道!

--结束END--

本文标题: 原生js如果实现类似fullpage的单页/全屏滚动效果

本文链接: https://www.lsjlt.com/news/66506.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 原生js如果实现类似fullpage的单页/全屏滚动效果
    小编给大家分享一下原生js如果实现类似fullpage的单页/全屏滚动效果,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!前言单页...
    99+
    2024-04-02
  • jQuery怎么实现类似fullpage插件的全屏滚动效果
    这篇文章主要讲解了“jQuery怎么实现类似fullpage插件的全屏滚动效果”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“jQuery怎么实现类似full...
    99+
    2024-04-02
  • javascript实现全屏页面滚动效果
    在我读完javaScript DOM之后,对解释型的javaScript脚本语言有了更加深刻的感悟和理解,并使我的javaScript代码更加规范化。 接下来,我们转入今天我要分享的...
    99+
    2024-04-02
  • jquery实现全屏滚动效果
    本文实例为大家分享了jquery实现全屏滚动的具体代码,供大家参考,具体内容如下 效果图 思路 1.要全屏,给父级、body、html、高度设置为100%,自己的宽度也100%,...
    99+
    2024-04-02
  • uniapp怎么实现类似原生条状页面效果
    近年来,随着智能手机普及率的不断提高,越来越多的人开始使用手机上网浏览,应用程序也迅速增加。为了提供更好的用户体验,很多应用程序都使用了原生条状页面效果。那么,如何在uniapp中实现类似原生条状页面效果呢?一、什么是原生条状页面效果?原生...
    99+
    2023-05-14
  • 原生JS实现酷炫分页效果
    本文实例为大家分享一个如下效果的JS分页特效,是不是很酷炫。  以下是代码实现: <!DOCTYPE html> <html> <h...
    99+
    2024-04-02
  • 原生JS实现滑动按钮效果
    利用Js制作的滑动按钮的具体代码,供大家参考,具体内容如下 首先贴上效果图 再贴上源码 <!DOCTYPE html> <html lang="en">...
    99+
    2024-04-02
  • js实现文字滚动的效果
    本文实例为大家分享了js实现文字滚动的效果的具体代码,供大家参考,具体内容如下 在之前小编已经和大家介绍了一些常用的js动画效果,在此,和大家介绍一种可能不太常用的动画效果。该动画效...
    99+
    2024-04-02
  • 原生js实现弹动小球效果
    本文实例为大家分享了JavaScript实现弹动小球效果展示的具体代码,供大家参考,具体内容如下 源码展示 <!doctype html> <html> &...
    99+
    2024-04-02
  • 原生JS实现简单的轮播图效果
    本文实例为大家分享了JS实现简单的轮播图效果的具体代码,供大家参考,具体内容如下 实现效果: 功能需求: 1.鼠标经过轮播图模块,左右按钮显示,离开隐藏左右按钮 2.点击右侧按钮一...
    99+
    2024-04-02
  • 原生js实现简单轮播图效果
    本文实例为大家分享了js实现简单轮播图效果的具体代码,供大家参考,具体内容如下 效果如下: 分析: 分析效果: 分析实现: 1、通过 document.querySelecto...
    99+
    2024-04-02
  • js如何实现消息滚动效果
    这篇文章主要为大家展示了“js如何实现消息滚动效果”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“js如何实现消息滚动效果”这篇文章吧。1.实现的中心思想,如图所...
    99+
    2024-04-02
  • js如何实现锚点滚动效果
    小编给大家分享一下js如何实现锚点滚动效果,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!  <!DOCTYPE html> <html> <...
    99+
    2024-04-02
  • 原生JS如何实现滑动按钮效果
    小编给大家分享一下原生JS如何实现滑动按钮效果,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!利用Js制作的滑动按钮的具体代码,供大家参考,具体内容如下首先贴上效果...
    99+
    2023-06-25
  • js如何实现文字滚动的效果
    这篇文章主要介绍“js如何实现文字滚动的效果”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“js如何实现文字滚动的效果”文章能帮助大家解决问题。1、取值:(1)writing-mode:horizon...
    99+
    2023-07-02
  • 基于原生JS怎么实现分页效果
    这篇文章主要介绍“基于原生JS怎么实现分页效果”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“基于原生JS怎么实现分页效果”文章能帮助大家解决问题。实现之后的效果首先需要初始化该对象的一些基本属性,显...
    99+
    2023-06-30
  • Vue如何实现类似头条效果的横向滚动导航条
    这篇文章主要讲解了“Vue如何实现类似头条效果的横向滚动导航条”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Vue如何实现类似头条效果的横向滚动导航条”吧!  cube-ui 所提供的组件中...
    99+
    2023-07-04
  • 原生JS如何实现带缓动效果的图片
    这篇文章给大家分享的是有关原生JS如何实现带缓动效果的图片的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。HTML部分:<div id="J-Slide&...
    99+
    2024-04-02
  • 原生js如何实现吸顶效果
    这篇文章给大家分享的是有关原生js如何实现吸顶效果的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。实现思路如下:1. div初始居普通文档流中2. 给window添加scroll事...
    99+
    2024-04-02
  • JS实现页面滚动到关闭时的位置与不滚动效果
    目录滚动不滚动标题显而易见,要说两种情况:重新打开页面或者返回某个页面时滚动到上次离开时的位置,以及不滚动保持在顶部。 滚动 这也有两种情况:页面重新打开,与返回某个页面。如果是前者...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作