zoukankan      html  css  js  c++  java
  • 理解鼠标滚动事件

    javascript
    <script>
    window.onload = function(){
    var count = 0;
    document.onmousewheel = function(e){
    /*鼠标滚动的量 下滚是负 上滚是正*/
    if(e.wheelDelta < 0){
    count ++;
    }else{
    count --;
    }
    console.log(count);
    }
    }
    </script>
    ```

    #### 第二步 了解 fullpage jquery插件

    > fullPage.js 是一个基于 jQuery 的插件,它能够很方便、很轻松的制作出全屏网站。

    下载地址 https://github.com/alvarotrigo/fullPage.js

    1、使用

    ```html
    <!DOCTYPE html>
    <html>

    <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="renderer" content="webkit">
    <title>fullpage</title>
    <meta name="description" content="">
    <meta name="keywords" content="">
    <meta name="author" content="Jesse">
    <link href="https://cdnjs.cloudflare.com/ajax/libs/fullPage.js/2.7.4/jquery.fullPage.css" rel="stylesheet">
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/fullPage.js/2.7.4/jquery.fullPage.js"></script>
    </head>

    <body>
    <!-- <ul id="fullpageMenu" style="position:fixed;top:100px;right:20px;z-index:999;">
    <li data-menuanchor="page1" class="active"><a href="#page1">1</a></li>
    <li data-menuanchor="page2" ><a href="#page2">2</a></li>
    <li data-menuanchor="page3"><a href="#page3">3</a></li>
    <li data-menuanchor="page4" ><a href="#page4">4</a></li>
    <li data-menuanchor="page5" ><a href="#page5">5</a></li>
    </ul> -->
    <div id="header" style="position:fixed;top:20px;right:20px;font-size: 30px;color:#fff;">123</div>
    <div id="fullpage">
    <div class="section">section1</div>
    <div class="section">section2</div>
    <div class="section">
    <div class="slide"> Slide 1 </div>
    <div class="slide"> Slide 2 </div>
    <div class="slide active"> Slide 3 </div>
    <div class="slide"> Slide 4 </div>
    </div>
    <div class="section">section4</div>
    <div class="section">section5</div>
    </div>
    <script>
    $(document).ready(function() {
    $('#fullpage').fullpage({
    //配置项介绍
    //sectionsColor为每个section设置background-color属性
    sectionsColor:['green','orange','gray','red','yellow'],
    //controlArrows定义是否通过箭头来控制slide,默认true
    controlArrows:false,
    //verticalCentered定义每一页的内容是否垂直居中,默认true
    verticalCentered:false,
    //resize字体是否随窗口缩放而缩放,默认false
    resize:true,
    //scrollingSpeed设置滚动速度,单位毫秒,默认700
    scrollingSpeed:1000,
    //anchors定义锚链接,默认为[],定义锚链接时,值不要和页面中的任何ID或name相同,且不需要加#
    anchors:['page1','page2','page3','page4','page5'],
    //lockAnchors是否锁定锚链接,默认为false,设为true后链接地址不会改变
    // lockAnchors:true,
    //easing定义页面section滚动的动画方式,默认为easeInOutCubic,若修改此项需引入jquery.easing插件
    //css3是否使用CSS3 transforms来实现滚动效果,默认为true。若浏览器不支持CSS3,则会用Jquery来实现
    //css3:false,
    //loopTop滚动到最顶部后是否连续滚动到底部,默认为false
    //loopBottom滚动到最低部后是否连续滚动到顶部,默认为false
    //loopHorizontal横向slide幻灯片是否循环滚动,默认为true
    //autoScrolling是否使用插件的滚动方式,默认为true,若为false则会出现浏览器自带滚动条
    //scrollBar是否包含滚动条,默认为false,若为true浏览器自带滚动条出现
    //paddingTop/paddingBottom设置每一个section顶部和底部的padding,默认为0
    //fixedElements固定元素,默认为null,需要配置一个jquery选择器,在页面滚动时,fixElements设置的元素不滚动
    fixedElements:"#header",
    //keyboardScrolling是否可以使用键盘方向键导航,默认为true
    //touchSensitivity在移动设备中滑动页面的敏感性,默认为5最高100,越大越难滑动
    //continousVertical是否循环滚动,默认为false,注意这个属性和loopTop loopBottom不兼容,不能同时设置
    //animateAnchor锚链接是否可以控制滚动动画,默认为true,若为false则锚链接定位失效
    //recordHistory是否记录历史,默认为true,通过浏览器的前进后退来导航。若设置autoScrolling:false,那么这个属性将被关闭
    //menu绑定菜单,设定的相关属性与anchors的值对应后,菜单可以控制滚动条,默认为false。可设置为菜单的jquery选择器
    //menu:"#fullpageMenu",
    //navigation是否显示导航,默认为false
    navigation:true,
    //navigationPosition导航小圆点的位置
    navigationPosition:"right",
    //navigationTooltips导航小圆点的提示,注意按顺序设置
    navigationTooltips:['page1','page2','page3','page4','page5'],
    //showActiveTooltip是否显示当前页面的tooltip信息,默认为false
    //slidesNavigation 是否显示横向幻灯片的导航,默认为false
    slidesNavigation:true,
    //slidesNavPosition横向导航的位置,默认为bottom,可以设置为top或bottom
    slidesNavPositon:"top",
    //scrollOverflow内容超过满屏后是否显示滚动条,默认为false,如果为true则会显示滚动条,若需滚动查看内容还需要jquery.slimscroll插件的配合
    //sectionSelector:section选择器。默认为.section
    //slideSelector:slide选择器,默认为.slide
    //方法介绍
    //$.fn.fullpage.***()
    //moveSectionUp()向上滚动一页
    //moveSectionDown()向下滚动一页
    //moveTo(section,slide)section从1开始,slide从0开始
    //silentMoveTo(section,slide)和moveTo一样,但是没有滚动效果
    //moveSlideRight()幻灯片向右滚动
    //moveSlideLeft()幻灯片向左滚动
    //setAutoScrolling(boolean):动态设置autoScrolling
    //setLockAnchors(boolean):动态设置lockAnchors
    //setRecordHistory(boolean):动态设置recordHistory
    //setScrollingSpeed(milliseconds):动态设置scrollingSpeed
    //destory(type)销毁fullpage,type可以不写或者使用all
    //reBuild()重新更新页面和尺寸,用于ajax请求改变页面结构后重建效果
    //lazyLoading
    });
    });
    </script>
    </body>

    </html>
    ```

    2、选项


    |选项|类型|默认值|解释|
    |----|----|----|----|
    |verticalCentered|字符串|true|内容是否垂直居中|
    |resize|布尔值|false|字体是否随着窗口缩放而缩放|
    |slidesColor| 函数| 无 |设置背景颜色|
    |anchors |数组| 无 |定义锚链接|
    |scrollingSpeed |整数| 700 |滚动速度,单位为毫秒|
    |easing |字符串 |easeInQuart |滚动动画方式|
    |menu |布尔值| false| 绑定菜单,设定的相关属性与 anchors 的值对应后,菜单可以控制滚动|
    |navigation |布尔值 |false |是否显示项目导航|
    |navigationPosition |字符串| right| 项目导航的位置,可选 left 或 right|
    |navigationColor |字符串 |#000| 项目导航的颜色|
    |navigationTooltips |数组 |空 |项目导航的 tip|
    |slidesNavigation |布尔值 |false |是否显示左右滑块的项目导航
    |slidesNavPosition |字符串 |bottom |左右滑块的项目导航的位置,可选 top 或 bottom
    |controlArrowColor |字符串 |#fff |左右滑块的箭头的背景颜色
    |loopBottom |布尔值 |false |滚动到最底部后是否滚回顶部|
    |loopTop |布尔值 |false |滚动到最顶部后是否滚底部|
    |loopHorizontal |布尔值 |true |左右滑块是否循环滑动|
    |autoScrolling |布尔值 |true |是否使用插件的滚动方式,如果选择 false,则会出现浏览器自带的滚动条|
    |scrollOverflow| 布尔值 |false |内容超过满屏后是否显示滚动条|
    |css3 |布尔值 |false |是否使用 CSS3 transforms 滚动|
    |paddingTop |字符串| 0 |与顶部的距离|
    |paddingBottom |字符串 |0 |与底部距离|
    |fixedElements |字符串 |无 ||
    |normalScrollElements| | 无 ||
    |keyboardScrolling |布尔值 |true |是否使用键盘方向键导航|
    |touchSensitivity |整数| 5 ||
    |continuousVertical| 布尔值| false |是否循环滚动,与 loopTop 及 loopBottom 不兼容|
    |animateAnchor |布尔值| true||
    |normalScrollElementTouchThreshold| 整数| 5 |||

    3、方法

    |方法|解释|
    |----|----|
    |moveSectionUp()| 向上滚动
    |moveSectionDown() |向下滚动
    |moveTo(section, slide)| 滚动到
    |moveSlideRight() |slide 向右滚动
    |moveSlideLeft() |slide 向左滚动
    |setAutoScrolling() |设置页面滚动方式,设置为 true 时自动滚动
    |setAllowScrolling() |添加或删除鼠标滚轮/触控板控制
    |setKeyboardScrolling() |添加或删除键盘方向键控制
    |setScrollingSpeed() |定义以毫秒为单位的滚动速度


    4、回调函数

    |回调函数|解释|
    |----|----|
    |afterLoad| 滚动到某一屏后的回调函数,接收 anchorLink 和 index 两个参数,anchorLink 是锚链接的名称,index 是序号,从1开始计算
    |onLeave| 滚动前的回调函数,接收 index、nextIndex 和 direction 3个参数:
    |index| 是离开的“页面”的序号,从1开始计算;
    |nextIndex| 是滚动到的“页面”的序号,从1开始计算;
    |direction| 判断往上滚动还是往下滚动,值是 up 或 down。
    |afterRender| 页面结构生成后的回调函数,或者说页面初始化完成后的回调函数
    |afterSlideLoad| 滚动到某一水平滑块后的回调函数,与 afterLoad 类似,接收 anchorLink、index、slideIndex、direction 4个参数
    |onSlideLeave| 某一水平滑块滚动前的回调函数,与 onLeave 类似,接收 anchorLink、index、slideIndex、direction 4个参数

  • 相关阅读:
    权限和分组
    验证与授权
    CSRF、XSS、clickjacking、SQL 的攻击与防御
    上下文处理器及中间件
    类和实例
    偏函数
    生成器
    迭代 复习
    函数调用 复习
    复习 条件判断,循环
  • 原文地址:https://www.cnblogs.com/grf0529/p/5962421.html
Copyright © 2011-2022 走看看