h5之scrollIntoView用法详解

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

一、scrollIntoView

html

scrollIntoView

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

scroll

页面结构

测试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(function () {//为页面添加页面滚动监听事件var wst = $(window).scrollTop(); //滚动条距离顶端值for (var i = 1; i < 6; i++) {             //加循环if ($("#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用法详解h5之scrollIntoView用法详解

h5之scrollIntoView控制页面元素滚动/*scrollIntoView*/#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;}/*scroll*/.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;}

scrollIntoView

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

scroll

页面结构

测试1
测试2
测试3
测试4
测试5
window.onload = function () {/* 如果滚动页面也是DOM没有解决的一个问题。为了解决这个问题,浏览器实现了一下方法,以方便开发人员如何更好的控制页面的滚动。 在各种专有方法中,HTML5选择了scrollIntoView()作为标准方法。scrollIntoView()可以在所有的HTML元素上调用, 通过滚动浏览器窗口或某个容器元素,调用元素就可以出现在视窗中。如果给该方法传入true作为参数,或者不传入任何参数, 那么窗口滚动之后会让调动元素顶部和视窗顶部尽可能齐平。如果传入false作为参数,调用元素会尽可能全部出现在视口中(可能的话,调用元素的底部会与视口的顶部齐平。)不过顶部不一定齐平. */document.querySelector("#roll1").onclick = function () { document.querySelector("#roll_top").scrollIntoView(false); }; document.querySelector("#roll2").onclick = function () { document.querySelector("#roll_top").scrollIntoView(true); }; }$(function () { $(window).scroll(function () {//为页面添加页面滚动监听事件var wst = $(window).scrollTop(); //滚动条距离顶端值for (var i = 1; i < 6; i++) { //加循环if ($("#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()}); });

登录后复制View Code

 

以上就是h5之scrollIntoView用法详解的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2910596.html

(0)
上一篇 2025年3月11日 04:34:43
下一篇 2025年3月7日 14:31:51

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • 分享移动端网页宽度值实例代码

    移动端网页宽度值(未加meta viewport标签): iphone:980px Galaxy(盖乐世):980px Nexus:980px blackberry(黑莓):980px LG:980px Nokia:980px kindle…

    2025年3月11日
    200
  • ios加载html5 audio标签时遇到的问题分享

    html5 audio标签在ios 微信浏览器中是无法自动播放的,最近在做一个小的项目遇到这个问题,安卓和pc都是正常的,唯独ios不行,查阅了很多资料,找到了以下方法,也许不是最好用的方法,如果有更方便的方法,尽请留言: html部分: …

    编程技术 2025年3月11日
    200
  • h5实现QQ聊天气泡的实例介绍

    这篇文章主要介绍了html5实现qq聊天气泡效果,用 html/css 做了个类似qq的聊天气泡,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 今天自己用 HTML/CSS 做了个类似QQ的聊天气泡,以下是效果图: 以下说下关键地方的样…

    2025年3月11日 编程技术
    200
  • HTML5 canvas学习的实例介绍

    1.html5中的canvas标签的创建 window.onload = function(){ createCanvas(); } function createCanvas(){ var canvas_width= 200, canva…

    编程技术 2025年3月11日
    200
  • h5中文件上传下载实例

    前言 html5 中提供的文件api在前端中有着丰富的应用,上传、下载、读取内容等在日常的交互中很常见。而且在各个浏览器的兼容也比较好,包括移动端,除了 ie 只支持 ie10 以上的版本。想要更好地掌握好操作文件的功能,先要熟悉每个api…

    编程技术 2025年3月11日
    200
  • h5元素/属性/格式化的详细介绍

    1.HTML元素 1.1 元素指的是开始标签到结束标签的所有代码。 1.2 元素的内容是开始标签与结束标签之间的内容。 1.3大多数HTML元素可用有属性。 1.4标签可以拥有属性为元素提供更多的信息。 1.5常用的标签属性: :align…

    编程技术 2025年3月11日
    200
  • H5中文件上传的详细介绍

    FileList 对象和 file 对象 html 中的 input[type=”file”] 标签有个 multiple 属性,允许用户选择多个文件,filelist对象则就是表示用户选择的文件列表。这个列表中的每…

    编程技术 2025年3月11日
    200
  • HTML5视频播放的详细介绍

    最近一段时间在使用PhoneGap开发一个App应用,App需要播放视频,本想直接使用html5的video,但使用它在全屏播放时不支持横屏播放,只能放弃。最终决定还是自己封装一个播放器算了,免得以后要扩展功能麻烦。     最近迷上hi这…

    2025年3月11日
    200
  • 实现一个HTML5音乐播放器的实例

    技术点:es6+webpack+html5 audio+sass 这里,我们将一步步的学到如何从零去实现一个H5音乐播放器。 首先来看一下最终的实现效果:Demo链接 接下来就步入正题: 要做一个音乐播放器就要非常了解在Web中音频播放的方…

    2025年3月11日 编程技术
    200
  • H5编辑器核心思想的实例分析

    代码和特性在chrome49下测试有效。 文本渲染的本质是对文本节点的渲染,通过浏览器内置的对象Range可以获得选择的起始点、与终止点 var range = getRangeObject();var start = range.star…

    编程技术 2025年3月11日
    200

发表回复

登录后才能评论