• 全屏滚动


          最近项目要做一个全屏垂直滚动的宣传效果,目前fullPage.js这个插件已经非常完美了,各种垂直滚动效果和回调功能都十分完善,能快速上手和完成项目开发需求。

    但是自己的js基础非常差,写的也很烂,抱着学习的态度试着用原生来写,大部分的学习资料来源于http://fed.lvmama.com/2014/12,在此我只记录下自己学习过程中遇到的问题和解决方法。

         一.功能

        1.页面不能出现滚动条;

        2.每一屏的宽高刚好满屏,且适应不同分辨率和尺寸的电脑;

        3.支持菜单点击和鼠标滚动事件;

        二.布局 

           <div class="wrap">
                 <div class="page page1">
                         PAGE1
                 </div>
                 <div class="page page2">
                         PAGE2
                 </div>
                 <div class="page page3">
                         PAGE3
                 </div>
                <div class="page page4">
                         PAGE4
                </div>   

            </div>

            body{
                  position: relative;
                  overflow: hidden;
            }
          .wrap{
                 position: absolute;
                  100%;
                 left: 0;
                 top: 0;
           }
         .page{
                100%;
          }

        三.脚本语言

       1.点击菜单索引,页面滚动,闭包实现

       var lis = document.getElementsByTagName("li");

       for(var j = 0; j < lis.length; j++){
          lis[j].onclick = (function(val){
               return function(){
                pageIndex = val; //变更索引为点击的值
                 pageScroll();
       }
       })(j)
    }

      2.滚动鼠标触发屏幕滚动事件

        mouseScroll(document);
        function mouseScroll(elm){
            if(elm.addEventListener){
                elm.addEventListener('DOMMouseScroll',scrollFunc,false);
            }//W3C Firefox
        window.onmousewheel=elm.onmousewheel=scrollFunc;//IE/Opera/Chrome
    };

      3.滚动动画

       timer = setInterval(function (){

          tempTop += 30;
          wap.style.top = tempTop + "px";

         //高度滚到计算的滚动值,则停止定时器
         if(tempTop == -newTop){
            clearInterval(timer);
        }
    },10)

        

        

  • 相关阅读:
    window端口被占用
    webstorm中关闭烦人Eslint语法检查
    STM32 printf 函数原型
    Memset、Memcpy、Strcpy 的作用和区别(转)
    SMD贴片元件的封装尺寸(转)
    Windows Phone开发工具初体验(转载)
    Open Cell(转载)
    标题:常用贴片元件封装(转载)
    关于TV Dongle的功能设计和思考【图】(转载)
    图片预览加上传遇到的一系列问题
  • 原文地址:https://www.cnblogs.com/dengyy/p/4497986.html
Copyright © 2020-2023  润新知