HTML5技术

h5之scrollIntoView控制页面元素滚动 - webNick

字号+ 作者:H5之家 来源:H5之家 2017-06-24 17:00 我要评论( )

如果滚动页面也是DOM没有解决的一个问题。为了解决这个问题,浏览器实现了一下方法,以方便开发人员如何更好的控制页面的滚动。在各种专有方法中,HTML5选择了scrollIntoView()作为标准方法。scrollIntoView()可以在所有的HTML元素上调用,通过滚动浏览器窗

  如果滚动页面也是DOM没有解决的一个问题。为了解决这个问题,浏览器实现了一下方法,以方便开发人员如何更好的控制页面的滚动。在各种专有方法中,HTML5选择了scrollIntoView()作为标准方法。scrollIntoView()可以在所有的HTML元素上调用,通过滚动浏览器窗口或某个容器元素,调用元素就可以出现在视窗中。如果给该方法传入true作为参数,或者不传入任何参数,那么窗口滚动之后会让调动元素顶部和视窗顶部尽可能齐平。如果传入false作为参数,调用元素会尽可能全部出现在视口中(可能的话,调用元素的底部会与视口的顶部齐平。)不过顶部不一定齐平.

一、scrollIntoView html

scrollIntoViewscrollIntoView(false)scrollIntoView(true) scrollIntoView(ture)元素上边框与视窗顶部齐平 scrollIntoView(false)元素下边框与视窗底部齐平

css

#myDiv { height: 900px; background-color: gray; } #roll_top { height: 900px; background-color: green; color: #FFF; font-size: 50px; position: relative; } #bottom { position: absolute; display: block; left: 0; bottom: 0; }

js

window.onload = function () { document.querySelector("#roll1").onclick = function () { document.querySelector("#roll_top").scrollIntoView(false); }; document.querySelector("#roll2").onclick = function () { document.querySelector("#roll_top").scrollIntoView(true); }; }

二、滚动监听 html

scrollfloor1floor2floor3floor4floor5 页面结构 测试1测试2测试3测试4测试5

css

.main div { height: 1000px; width: 300px; margin: 20px; background-color: #C0C0C0; } #nav { position: fixed; width: 100px; height: 200px; top: 40%; right: 10px; } #nav div { cursor: pointer; text-align: center; }

js

$(function () { $(window).scroll(wst = $(window).scrollTop(); (($("#f" + i).offset().top <= wst + 10) { //判断滚动条位置 $('#nav div').css("background-color", "white"); $(".f" + i).css("background-color", "red"); } } }); $('#nav div').click(function () { $('html,body').animate({scrollTop: $("#" + this.className).offset().top}, 500); // $("#" + this.className)[0].scrollIntoView(true);//h5 scrollIntoView() }); });

全部代码

h5之scrollIntoView控制页面元素滚动 #myDiv { height background-color #roll_top { height background-color color font-size position #bottom { position display left bottom .main div { height width margin background-color #nav { position width height top right #nav div { cursor text-alignscrollIntoViewscrollIntoView(false)scrollIntoView(true) scrollIntoView(ture)元素上边框与视窗顶部齐平 scrollIntoView(false)元素下边框与视窗底部齐平scrollfloor1floor2floor3floor4floor5 页面结构 测试1测试2测试3测试4测试5 window.onload = function () { /* 如果滚动页面也是DOM没有解决的一个问题。为了解决这个问题,浏览器实现了一下方法,以方便开发人员如何更好的控制页面的滚动。 在各种专有方法中,HTML5选择了scrollIntoView()作为标准方法。scrollIntoView()可以在所有的HTML元素上调用, 通过滚动浏览器窗口或某个容器元素,调用元素就可以出现在视窗中。如果给该方法传入true作为参数,或者不传入任何参数, 那么窗口滚动之后会让调动元素顶部和视窗顶部尽可能齐平。如果传入false作为参数,调用元素会尽可能全部出现在视口中(可能的话,调用元素的底部会与视口的顶部齐平。)不过顶部不一定齐平. */ document.querySelector( () { document.querySelector(); }; document.querySelector( () { document.querySelector(); }; } $(function () { $(window).scroll(); $(); } } }); $( () { $(); // $("#" + this.className)[0].scrollIntoView(true);//h5 scrollIntoView() }); });

View Code

 

 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • 移动端页面布局的那些事儿 - 小矮人Web前端

    移动端页面布局的那些事儿 - 小矮人Web前端

    2017-06-14 14:00

  • 如何在页面上实现一个圆形可点击区域 - Candice&Gladys

    如何在页面上实现一个圆形可点击区域 - Candice&Gladys

    2017-06-08 16:00

  • 制作404页面的重要性 - 纵横数据

    制作404页面的重要性 - 纵横数据

    2017-05-13 11:00

  • 前端页面跳转并取到值 - 哈哈哈是我呀

    前端页面跳转并取到值 - 哈哈哈是我呀

    2017-04-14 14:01

网友点评
r