首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

JS滑动滚动的n种方式

JS滑动滚动的n种方式 # 阅读本文,你将: 了解原生JS实现页面滚动的多种方式 了解这多种方式可以对应上的效果以及推荐的应用场景 多个滑动方面的坑以及相应(如果有)的解决方案 获得一些有用的函数...1.3 浏览器的支持度 1.4 示例与推荐使用场景 原始位置图 我们定位如图红框的元素,从顶部开始示例 1.4.1 scrollIntoVIew() 页面滑动至父级容器,但是子项并没有被滑动到可视区域...1.4.2 scrollIntoView(false) 页面滑动到底部,该元素从下方进入可视区域 1.4.3 scrollIntoView({block:"center",inline:"center..."}) 仍然是没有看到我们要呈现的元素,疑似原因为我们的选定元素的爷爷级元素才是可滑动的 1.5 补充 scrollIntoView和scrollIntoViewIfNeeded的区别在于,第一前者的支持性较高...有出现父容器滑动不到指定地方的问题,可以两次调用api(注意异步) 2 设置scrollTop/scrollLeft 2.1 基本用法 element.scrollTop=100; 当我们获取到一个元素

6K10
您找到你想要的搜索结果了吗?
是的
没有找到

Java selenuim用执行js模拟鼠标滚动的方式

题目: Java selenuim用执行js模拟鼠标滚动的方式完成页面滚动的异步加载及Java接收浏览器js的返回值 在使用selenuim webdriver爬取网页时,经常会有很多网页并不是访问链接就会加载全部内容的...,而是需要鼠标向下滚动,动态的加载内容,比如知乎首页。...这样在爬取的过程中并不能直接抓数据,需要先模拟鼠标滚动,让页面先加载出来才行。 ---- 我使用的方法是利用如下js代码来完成页面的滚动,每次滚动多少可以根据不同情况自行调整。...可以先在真实场景调试好每次要滚动多少会触发加载,然后再写进代码中使用。同理想要横向滑动的话,就改变第一个参数,第二个参数置为0。...接下来的问题就是如何使Java代码能够接收到浏览器执行的js代码返回值的问题了。很简单,在js代码上加上return 即可。注意有一个空格。

4.4K20

06-移动端开发教程-fullpage框架

CSS3的新特性已经讲完了,接下来我们看一下jQuery的一个全屏jQuery全屏滚动插件fullPage.js。...我们经常见到一些全屏的特绚丽页面,手指或者鼠标滑动一下就是一整屏切换,而且还有各种效果。比如:全屏滑动案例 下面我们就介绍一下jQuery的fullPage.js的如何使用及常用的配置。...1. fullpage.js的主要功能 fullPage.js是一个基于jquery的插件,它能很方便的制作出全屏网站,github地址。 主要功能有: 支持鼠标滚动。 支持前后退和键盘控制。...loopTop 布尔值 false 滚动到最顶部后是否滚底部 loopHorizontal 布尔值 true 左右滑块是否循环滑动 autoScrolling 布尔值 true 是否使用插件的滚动方式...向左滚动 setAutoScrolling() 设置页面滚动方式,设置为 true 时自动滚动 setAllowScrolling() 添加或删除鼠标滚轮/触控板控制 setKeyboardScrolling

5K50

06-移动端开发教程-fullpage框架

CSS3的新特性已经讲完了,接下来我们看一下jQuery的一个全屏jQuery全屏滚动插件fullPage.js。...我们经常见到一些全屏的特绚丽页面,手指或者鼠标滑动一下就是一整屏切换,而且还有各种效果。比如:全屏滑动案例 下面我们就介绍一下jQuery的fullPage.js的如何使用及常用的配置。...1. fullpage.js的主要功能 fullPage.js是一个基于jquery的插件,它能很方便的制作出全屏网站,github地址。 主要功能有: 支持鼠标滚动。 支持前后退和键盘控制。...loopTop 布尔值 false 滚动到最顶部后是否滚底部 loopHorizontal 布尔值 true 左右滑块是否循环滑动 autoScrolling 布尔值 true 是否使用插件的滚动方式...向左滚动 setAutoScrolling() 设置页面滚动方式,设置为 true 时自动滚动 setAllowScrolling() 添加或删除鼠标滚轮/触控板控制 setKeyboardScrolling

5.1K90

滚动穿透的6种解决方案【已自测】

赠送一套自定义手势滚动效果的代码哦~ 一、body无滚动 + 弹层无滚动[css-超出隐藏] 适用场景需满足以下条件:     1、body最好是一屏、无滚动     2、虽然body内容超出一屏滚动...二、body无滚动 + 弹层内部滚动[css-弹框超出滚动|真机有bug] 适用场景需满足以下条件:     1、body最好是一屏、无滚动     2、虽然body内容超出一屏滚动,但触发弹层出现的按钮在第一屏中...五、body滚动 + 弹层内部滚动[js-代码模拟上下滑动手势效果] 我想,既然我们监控弹层、监控touchY那么辛苦了已经,还差再辛苦一点,自己写一个模拟手势滚动效果嘛!...解决方案与思路: 具体制作思路写在js注释上。 1、交互代码 ? 2、禁掉弹窗的touchmove 的默认事件 ? 3、重写手势滑动效果 ?...问题局限: 不好的点就是没有原生滚动条那种效果,一点也不灵动,只能鼠标移动多少、可滚动区域挪动多少。

13.4K31

Canvas之鼠标滑动特效

案例-鼠标滑动效果 了解了canvas之后,我们使用新标签搭配原生JS,实现一个简单的页面特效 ------ 鼠标滑动效果,如下所示: 页面搭建 <!...myCanvas.height = window.innerHeight; }; init(); 监听 window.onresize = init; // 监听屏幕大小改变 重新为canvas大小赋值 移动事件 // 当鼠标移动时...将鼠标坐标传入构造函数 同时创建一个对象 myCanvas.addEventListener('mousemove', function (e) { // 将对象push到数组中,画出来的彩色小点可以看作每一个对象中记录着信息...requestAnimationFrame(render); } render(); 总结 本文我们首先了解了粒子特效,它大多数是HTML的新特性,使用canvas标签创建出来的,或者说是绘制吧,canvas是画布,但是还需要搭配js...总而言之,canvas的出现使得前端页面变得更加丰富多彩,提高了视觉效果,对于用户体验进行了适当的增强,感兴趣的小伙伴可以去尝试下,鼠标滑动效果特效。

1.8K10

js鼠标事件

页面加载事件(onload),鼠标双击事件(ondbclick) window.onload=function(){                 //绑定元素,执行对应事件 鼠标双击(ondblclick...(){                     alert('我是双击显示的');                 }             } 鼠标摁下(onmousedown)事件(摁下就执行,鼠标无需抬起...}             } 鼠标抬起(onmouseup)事件(摁下后,鼠标回弹才执行)             window.onload=function(){                 ...鼠标移入(onmouseover)事件             window.onload=function(){                 //绑定元素,执行鼠标移入事件   鼠标移入(onmousemove...){                     alert('鼠标移出操作');                 }             } PS:鼠标移动(onmousemove)和鼠标移入(onmouseover

18.1K40

滑屏 H5 开发实践九问 - 腾讯ISUX

控制每一屏滑动 如上 Gif 图所示,滑屏可以在 wrapper 上操作,也可以将每一屏作为独立的滑动元素。...touchmove 事件,页面可以滚动了,便出现上述可以滑动 wrapper 的情况,而方案二控制每一屏滑动,每屏最宽最高就只是屏幕的宽高,也就不会出现页面滑动了。...若希望做到体验无缝,请在前一屏加载后一屏的资源。 第四问:内部滚动怎么办?...内部滚动即某屏内部还有滚动(但实际上系统的滚动跟滑屏的滚动是冲突对立的),如果这一屏不涉及复杂的 DOM,我还是觉得可以使用 iScroll,虽然它在安卓上的性能一直被诟病,但经过非常多安卓机的检验,效果还是在可接收范围内的...,而 iOS 和 Android 的大部分浏览器中,页面滚动时是会阻止页面重绘的(JS 的执行也无法立刻生效在页面中),所以Demo 里看到的效果就是回弹后才翻屏。

4.1K40

滑屏 H5 开发实践九问 - 腾讯ISUX

控制每一屏滑动 如上 Gif 图所示,滑屏可以在 wrapper 上操作,也可以将每一屏作为独立的滑动元素。...touchmove 事件,页面可以滚动了,便出现上述可以滑动 wrapper 的情况,而方案二控制每一屏滑动,每屏最宽最高就只是屏幕的宽高,也就不会出现页面滑动了。...若希望做到体验无缝,请在前一屏加载后一屏的资源。 第四问:内部滚动怎么办?...内部滚动即某屏内部还有滚动(但实际上系统的滚动跟滑屏的滚动是冲突对立的),如果这一屏不涉及复杂的 DOM,我还是觉得可以使用 iScroll,虽然它在安卓上的性能一直被诟病,但经过非常多安卓机的检验,效果还是在可接收范围内的...,而 iOS 和 Android 的大部分浏览器中,页面滚动时是会阻止页面重绘的(JS 的执行也无法立刻生效在页面中),所以Demo 里看到的效果就是回弹后才翻屏。

3.7K81

原生 JS 实现惯性滚动,给鼠标滚轮增加阻尼感,纵享丝滑

前言当我们在移动终端上滑动页面,手指离开屏幕后,页面的滚动并不会马上停止,而是在一段时间内继续保持惯性滚动,并且滑动阻尼感和持续时间与滑动手势的幅度成正比。...可以通过以下例子感受两种滚动的差异:图片https://code.juejin.cn/pen/7272919488994279484本文将教会你如何让鼠标滚轮也能够丝滑地操作网页,带来更舒适的页面惯性滚动体验...,同时讲解其中技术原理与细节,用最少量的代码实现 JS 鼠标惯性滚动。...实现原理首先需要利用 DOM 事件禁止鼠标滚动,转为 JS 控制。...(value);}此时页面就可以像往常一样滚动了,并且是不依赖系统默认事件的,由 JS 代理滚动效果,接下来我们继续往方法里处理如何平滑过渡。

94841
领券