全屏滚动插件fullPage.js使用实例解析

如今我们经常能看见到全屏网站,尤其是国外玩站。这些网站用几幅很大的图片或色块做背景,再添加一些简单的内容,显得格外的高端大气上档次。而JQuery的一款插件fullpage.js,可以实现全屏滚动,非常流行的效果,兼容性IE8+兼容性不错,能够兼容多种浏览器。

主要功能有:

支持鼠标滚动

支持前进后退和键盘控制

多个会调函数

支持手机、平板触摸事件

支持CSS3动画

支持窗口缩放

窗口缩放时自动调整

可设置滚动宽度、背景颜色、滚动速度、循环选项、回调、文本对齐方式等等

准备工作(下载jquery.fullPage.js和jquery.fullPage.css插件)

网址:插件下载地址(https://github.com/alvarotrigo/fullPage.js)

代码的外联式引用(包括jquery-2.1.0.js)一共3个

<link rel="stylesheet" type="text/css" href="css/jquery.fullPage.css"/>
<script src="js/jquery-2.1.0.js" type="text/javascript" charset="utf-8"></script>
<script src="js/jquery.fullPage.js" type="text/javascript" charset="utf-8"></script>

HTML脚本

<ul id="fullpageMenu"><!--ul导航栏按钮data-menuanchor为加载的页面page-->
      <li data-menuanchor = "page1" class="active"><a href="#page1">section1</a></li>
      <li data-menuanchor = "page2"><a href="#page2">section2</a></li>
      <li data-menuanchor = "page3"><a href="#page3">section3</a></li>
      <li data-menuanchor = "page4"><a href="#page4">section4</a></li>
    </ul>
    <div id="fullpage"><!--div为容器,这里要用id名为fullpage-->
      <div class="section"><!--默认的上下滚动页面,类名可改sectionSelector:".section",不改默认类名要为section-->
        <h1>这是第一屏</h1>
      </div>
      <div class="section">
        <div class="slide">幻灯片1</div><!--默认的左右滚动幻灯片,类名可改slideSelector:".slide",不改默认类名要为slide-->
        <div class="slide">幻灯片2</div>
        <div class="slide">幻灯片3</div>
        <div class="slide">幻灯片4</div>
      </div>
      <div class="section">
        <h1>这是第三屏</h1>
      </div>
      <div class="section">
        <h1>这是第四屏</h1>
      </div>
    </div>

CSS布局

<style type="text/css">
    *{
      margin: 0;
      padding: 0;
    }
      .slide{
        font-size: 60px;
        text-align: center;
      }
      #fullpageMenu{
        font-size: 30px;
        position: fixed;
        top: 0;
        z-index: 1;
        list-style: none;
      }
      #fullpageMenu li a{
        text-decoration: none;
      }
      #fullpageMenu li{
        background-color: mediumaquamarine;
        border: 1px solid black;
        padding: 8px;
        cursor: pointer;
        text-align: center;
      }
      #fullpageMenu li:hover{
        background-color: orange;
      }
    </style>

jQuery脚本(主要用fullPage.js对页面进行参数配置)

<script type="text/javascript">
  $(document).ready(function(){
    //配置项
    $("#fullpage").fullpage({
      //可以为每一个section设置background-color属性
      sectionsColor:["green","orange","gray","red"], 

      //定义是否通过箭头来控制slide幻灯片,默认为true。当我们设置为false,则幻灯片左右两则的箭头就会消失,在移动设备上,我们可以通过滑动来操作幻灯片
      controlArrows:true, 

      //每一页的内容是否垂直居中,默认为true.一般保持默认值
      verticalCentered:true, 

      //滚动速度,单位为毫秒,默认为700
      scrollingSpeed:1000, 

      //定义锚连接,默认为[]。有了锚链接,用户就可以快速打开定位到某一页面
      //注意定义锚链接的时候,值不要和页面中任意的id或name相同,尤其是在IE浏览器下。而且定义时不需要要加#
      anchors:["page1","page2","page3","page4"], 

      //是否锁定锚链接,默认为false。如果设置为true,那么定义的锚链接,也就是anchors属性则没有效果。这个配置项使用的比较少
      lockAnchors:false, 

      //定义页面section滚动的动画方式,如果修改此项,需要引入jquery.easings插件,或者jquery ui
      easing:"easeInOutCubic", 

      //是否使用CSS3 transforms 来实现滚动效果,默认为true。这个配置项可以提高支持css3的浏览器,比如移动设备等的速度,如果浏览器不支持css3,则会使用jquery来替代css3实现滚动效果
      css3:true, 

      //滚动到最顶部后是否连续滚动到底部,默认为false
      loopTop:false, 

      //滚动到最底部是否连续滚动回顶部,默认为false
      loopBottom:false, 

      //横向slider幻灯片是否循环滚动,默认为true
      loopHorizontal:true, 

      //是否使用插件的滚动方式,默认为true,如果选择false,则会出现浏览器自带的滚动条,将不会按页滚动,而是按照滚动条的默认行为来滚动
      autoScrolling:true, 

      //是否包含滚动条,默认为false,如果设置为true,则浏览器自带的滚动条出现,页面滚动时还是按页滚动,但是滚动条的默认行为也有效
      scrollBar:false, 

      //设置每一个section顶部和底部的padding,默认为0,一般如果需要设置一个固定顶部或者底部的菜单、导航、元素等,可以使用这两个配置项
      paddingTop:0,
      paddingBottom:0, 

      //固定的元素,默认为null,需要配置一个jquery选择器。在页面滚动的时候,fixedElements设置的元素固定不动
      fixedElements:"", 

      //是否可以使用键盘方向键导航,默认为true
      keyboardScrolling:true, 

      //在移动设备中滑动页面的敏感性,默认为5,是按百分比来衡量,最高为100,越大则越难滑动
      touchSensitivity:5, 

      //是否循环滚动,默认为false。如果设置为true,则页面会循环滚动,而不像loopTop或loopBottom那样出现跳动,注意这个属性和这两者不兼容,请不要同时使用
      continuousVertical:false, 

      //锚链接是否可以控制滚动动画,默认为true。如果设置为false,则通过锚链接定位到某个页面显示不再有动画效果
      animateAnchor:true, 

      //是否记录历史,默认为true,可以记录页面滚动的历史,通过浏览器的前进后退来导航。注意如果设置了autoScrolling:false,那么这个配置也将被关闭,即设置为false
      recordHistory:true, 

      //绑定菜单,设定的相关属性与anchors的值对应后,菜单可以控制滚动,默认为false。可以设置为菜单的jquery选择器
      menu:false, 

      //是否显示导航,默认为false。如果设置为true,会显示小圆点,作为导航
      navigation:true, 

      //导航小圆点的位置,可以设置为left或者right
      navigationPosition:"right", 

      //导航小圆点的tooltips设置,默认为[],注意按照顺序设置
      navigationTooltips:["page1","page2","page3","page4"], 

      //是否显示当前页面的导航的tooltip信息,默认为false
      showActiveTooltip:true, 

      //是否显示横向幻灯片的导航,默认为false
      slidesNavigation:true, 

      //横向幻灯片导航的位置,默认为bottom,可以设置为top或bottom
      slidesNavPosition:"top", 

      //内容超过满屏后是否显示滚动条,默认为false。如果设置为true,则会显示滚动条,如果滚动查看内容,还需要jquery.slimscroll插件的配合
      scrollOverflow:false, 

      //section的选择器,默认为.section
      sectionSelector:".section", 

      //slideSelector:slide的选择器,默认为.slide
      slideSelector:".slide",
    });
  })
</script>

还有一些fullPage里的方法函数(可调用,这里我没调用)

//方法函数
        $.fn.fullpage.xxx()//调用方法
        $.fn.fullpage.moveSectionUp();//向上滚动一页
        $.fn.fullpage.moveSectionDown();//向下滚动一页
        $.fn.fullpage.moveTo(section,slide);//滚动到第几页,第几个幻灯片,注意,页面是从1开始,而幻灯片是从0开始
        $.fn.fullpage.silentMoveTo(section,slide);//滚动到第几页,第几个幻灯片和moveTo一样,但是没有动画效果
        $.fn.fullpage.moveSlideRight();//幻灯片向右滚动
        $.fn.fullpage.moveSlideLeft();//幻灯片向左滚动
        $.fn.fullpage.setAutoScrolling(Boolean);//动态设置autoScrolling
        $.fn.fullpage.setLockAnchors(Boolean);//动态设置lockAnchors
        $.fn.fullpage.setRecordHistory(Boolean);//动态设置recordHistory
        $.fn.fullpage.setScrollingSpeed(milliseconds);//动态设置scrollingSpeed
        $.fn.fullpage.destroy(type);//销毁fullpage特效,type可以不写,或者使用all,不写type,fullpage给页面添加的样式和html元素还在如果使用all,则样式、html等全部销毁,页面恢复和不使用fullpage相同的效果
        $.fn.fullpage.reBuild();//重新更新页面和尺寸,用于通过ajax请求后改变了页面结构之后,重建效果

演示效果:

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

(0)

相关推荐

  • 彻底搞懂JS无缝滚动代码

    在做个东西要滚动代码 而且是无缝的 搞了半天还是不行  决心一定要把这个问题搞定 经过研究 也不难 代码如下: 程序代码 复制代码 代码如下: <div id=demo style=overflow:auto;height:180;width:200;background:#009900;color:#006600>  <table  align=top>  <tr>  <td id=demo1 valign=top> <p>aaaaaaaaaa

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

    前言 单页/全屏滚动页面越来越常见了,它多用于产品介绍.招聘等内容较少的简单页面.针对这种效果也出现了不少 jQuery 插件,本文实现的效果类似于fullpage的单屏滚动,使用原生JS实现,不依赖任何js库: css代码: html,body {height:100%;} body {margin:0px;} div {height:100%;} html代码: <div style="background:#FEE;"></div> <div sty

  • fullpage.js全屏滚动插件使用实例

    刚做好公司网站,通过全屏滚动,显著提高了官网的浏览体验.遂总结一下使用fullpage.js的方法.欢迎指正 一. fullpage.js简介 fullpage.js是一套实现浏览器全屏滚动的js插件,很多网站现在都使用了其来实现较好的浏览体验.  可以实现的功能: •支持前进后退和键盘控制  •多个回调函数  •支持手机.平板触摸事件  •支持 CSS3 动画  •支持窗口缩放  •窗口缩放时自动调整  •可设置滚动宽度.背景颜色.滚动速度.循环选项.回调.文本对齐方式等等 二.插件下载 np

  • 原生javascript实现的全屏滚动功能示例

    本文实例讲述了原生javascript实现的全屏滚动功能.分享给大家供大家参考,具体如下: 原理: 1. 计算当前浏览器屏幕高度,每次翻页显示的内容高度即为屏幕高度 2. 对鼠标滚轮事件进行监听,注意滚轮事件的浏览器兼容问题. 废话不多说,直接上代码 html代码: <div id="wrap"> <div id="main" style="top: 0;"> <div class="content num

  • js滚动条回到顶部的代码

    虽然平滑性处理的不好,但非常适合学习 复制代码 代码如下: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html lang="en"> <head> <meta http-equiv="Content-Type" content="tex

  • JS图片无缝、平滑滚动代码

    非常平滑的JS图片滚动特效代码,无缝循环,速度可自定义,鼠标悬停时停止.它的特点是JS和图片地址分离,这样做你就经易的从数据库动态调用每张图片的地址,方便控制,因此它非常的应用. 复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <ht

  • js操作滚动条事件实例

    本文实例讲述了js操作滚动条事件的方法.分享给大家供大家参考.具体分析如下: 之前一直很纳闷,如何监视滚动条的事件,今天终于有点明白了. 下边代码,是监听滚动条只要移动,下方的返回顶部的div显示与隐藏的代码 window.onscroll = function () { var t = document.documentElement.scrollTop || document.body.scrollTop; if (t > 0) { $(".cbbfixed").css(&q

  • fullPage.js和CSS3实现全屏滚动效果

    首先说一下fullpage,它是一个jquery的插件,用来实现鼠标向上向下滑动,就会自动切换到上一屏或者下一屏,对于要做一些高大上的效果确实是一个很好的插件.首先先展示一下基本的效果图. 总共有四屏的内容 当鼠标每次上下滑动时就会一整屏的切换. 第一屏是用一个图片,其他的三屏都是由左侧的三个图片和右侧的两个图片组成的. 这三屏左侧的图片展开方式不同,所以就更有炫酷的效果. 第二屏的三个图片是当页面显示时从下到上依次出来到正确的位置. 第三屏的三个图片是当页面显示时从左到右依次展开到正确的位置.

  • Javascript 实现全屏滚动实例代码

    JS 全屏滚动 参照fullPage.js的效果,用自己的想法实现的. 实现的效果:1.全屏滚动,滚动一下齿轮就会滚动全屏. 2.自适应缩放,无论怎么改变窗口的大小,都会保证用一个元素占满全屏. 下一步计划: 1.改成react组件 2.实现更多的效果 注释写的很清楚,基本上知道函数怎么用就可以了.有想法这东西就很简单. 这里偷懒使用了我之前写过的一个运动框架(其实就是一个函数),稍加修改就可以在这上面使用.框架相关:点击这里 注释非常详细了,就不说其他的了.直接上代码: <!DOCTYPE h

  • js实现的文字横向无间断滚动

    我一开始想到的标签是<marquee>,因为它可以实现横向滚动.经理说它的起始位置从最右边出来的,能不能将它改成从中间出来,或者从最左边出来也行.查了相关资料,才知道<marquee>无法指定起始位置.后来在网上找到一段代码,它是用图片来实现的,我将图片改成文字之后,顺利地实现了我所想要的功能.代码如下: #gongao{width:1000px;height:30px;overflow:hidden;line-height:30px;font-size:13px;font-fam

  • jQuery插件fullPage.js实现全屏滚动效果

    本文实例为大家分享了全屏滚动插件fullPage.js的具体使用方法,供大家参考,具体内容如下 0.01 基本演示  的HTML 布局 以及js 代码 //需要连接 连接的三个文件 <link rel="stylesheet" href="css/jquery.fullPage.css"> //css文件 <script src="js/jquery-1.8.3.min.js"></script> //jQue

随机推荐