滑轮滑动+小圆点触发全屏上下滚动并实现不同浏览器窗口下的缩放
来源:互联网 发布:在淘宝上买微星笔记本 编辑:程序博客网 时间:2024/05/14 02:09
css准备:模块宽度设置为100%;模块高度设置为100vh;内容区域设置为1000*800,居中显示;js:$(function(){ `//初始化页面置于顶部 $("html,body").animate({scrollTop:0},300); var page = 0; //浏览器当前窗口可视区域宽度 var viewWidth=$(window).width(); //浏览器当前窗口可视区域高度 var viewHeight=$(window).height(); //窗口宽度小于1000时,缩放 if(viewWidth<1000){ //可视区域的高度+下侧滚动条的高度 viewHeight+=17; $(".content-box1").css("transform",'scale('+(viewWidth/1500)+')'); $(".content-box2").css("transform",'scale('+(viewWidth/1500)+')'); $(".content-box3").css("transform",'scale('+(viewWidth/1500)+')'); } //宽度小于800时,缩放 if(viewHeight<800){ $(".content-box1").css("transform",'scale('+(viewHeight/900)+')'); $(".content-box2").css("transform",'scale('+(viewHeight/900)+')'); $(".content-box3").css("transform",'scale('+(viewHeight/900)+')'); } //窗口变化时刷新页面 $(window).resize(function() {location.reload();}); //锚点跳转 $(".anchor-btn1").on("click",function(){ $(".circle02").addClass("active").siblings().removeClass("active"); jump("#content-box2"); page=1; }); $(".anchor-btn2").on("click",function(){ $(".circle03").addClass("active").siblings().removeClass("active"); jump("#content-box3"); page=3; }); //小圆点切换 $(".circle01").on("click",function(){ $("html,body").animate({"scrollTop": -(viewHeight * 1)},function(){ $(".circle01").addClass("active").siblings().removeClass("active"); }); }); $(".circle02").on("click",function(){ $(".circle02").addClass("active").siblings().removeClass("active"); $("html,body").animate({"scrollTop": viewHeight * 1},function(){ page=1; $(".circle01").off("click").on("click",function(){ $("html,body").animate({"scrollTop": -(viewHeight * 1)},function(){ $(".circle01").addClass("active").siblings().removeClass("active"); page=0; }); }); }); }); $(".circle03").on("click",function(){ $(".circle03").addClass("active").siblings().removeClass("active"); $("html,body").animate({"scrollTop": viewHeight * 2},function(){ page=3; $(".circle01").off("click").on("click",function(){ $("html,body").animate({"scrollTop": -(viewHeight * 2)},function(){ $(".circle01").addClass("active").siblings().removeClass("active"); page=0; }); }); }); }); // jquery 兼容的滚轮事件 100vh $(document).on("mousewheel DOMMouseScroll", function (e) { e.preventDefault(); //滑轮滚动时先判断页面是否在动 if(!$("html,body").is(":animated")) { //获得判断值 var delta = (e.originalEvent.wheelDelta && (e.originalEvent.wheelDelta > 0 ? 1 : -1)) || // chrome & ie (e.originalEvent.detail && (e.originalEvent.detail > 0 ? -1 : 1)); // firefox if (delta < 0) { // 向下滚 e.preventDefault(); //向上滚时page的结束值为-1,此时如果向下滚须先重置page为0 if (page == -1) {page = 0;} if (page < 3) { page++; switch (page) { case 1: $(".circle02").addClass("active").siblings().removeClass("active"); $("html,body").animate({"scrollTop": viewHeight * page}, function () { page = 1 }); break; case 2: if (!$("html,body").is(":animated")) { $(".circle03").addClass("active").siblings().removeClass("active"); $("html,body").animate({"scrollTop": viewHeight * page}, function () { }); break; } } } } else if (delta > 0) { // 向上滚 e.preventDefault(); //向下滚时page的结束值是3,此时如果向上滚须先重置page为2 if (page == 3) {page = 2;} if (page >= 0) { page--; switch (page) { case 1: $(".circle02").addClass("active").siblings().removeClass("active"); $("html,body").animate({"scrollTop": viewHeight * page}, function () { page = 1; }); break; case 0: if (!$("html,body").is(":animated")) { $(".circle01").addClass("active").siblings().removeClass("active"); $("html,body").animate({"scrollTop": viewHeight * page}, function () { }); break; } } } } } }); //声明跳转函数(可改变跳转时长) function jump(sel) { $("html,body").animate({ scrollTop: $(sel).offset().top }); } });
阅读全文
0 0
- 滑轮滑动+小圆点触发全屏上下滚动并实现不同浏览器窗口下的缩放
- js判断鼠标滑轮滚动方向并根据滚动的方向触发不同的事件
- javascript滚动条响应鼠标滑轮的实现上下滚动事件
- 小圆点的实现
- JavaScript判断鼠标中键滑轮的上下滚动
- 实现浏览器全屏窗口的方法
- Android自定义View来实现解析lrc歌词并同步滚动、上下拖动、缩放歌词的功能[转]
- view实现自定义小圆点滑动
- 滑动窗口滚动条触发事件
- javascript禁止手机浏览器、微信浏览器的上下滑动,滚动问题
- JS如何在不同浏览器下实现全屏
- ViewPager小圆点滑动
- viewpager+定时器实现图片的上下滑动并播放音乐
- 全屏滚动的实现
- 我的Android进阶之旅------>Android自定义View来实现解析lrc歌词并同步滚动、上下拖动、缩放歌词的功能
- flexpaper全屏缩放后 浏览器滚动条失效
- viewpage实现的(带有小圆点效果的)滑动图片效果
- ViewPager翻页的时候下面的小圆点跟着滑动如何实现。
- scala安装配置
- 匠牛社区AM5728视频loopback实例
- G1 Garbage Collector
- IT 项目的安全需求(一)— CLASP
- Notepad++ 64位 Jsonviewer Compareplugin 安装
- 滑轮滑动+小圆点触发全屏上下滚动并实现不同浏览器窗口下的缩放
- Maven之Tomcat
- codeforces 894B
- Python+Selenium定位不到元素原因及解决方法(报:NoSuchElementException)
- 鼠标拖动改变div容器的大小
- 明年iPhone或支持双卡双待;刘强东:若十年后还是BAT,对国家是种不幸|ServiceHot一周热闻
- 使用阻塞队列爬取代理ip实现爬虫
- SSM框架——详细整合教程(Spring+SpringMVC+MyBatis)
- 欢迎使用CSDN-markdown编辑器