首页前端开发HTMLh5之scrollIntoView用法详解

h5之scrollIntoView用法详解

时间2024-01-22 23:24:03发布访客分类HTML浏览1045
导读:收集整理的这篇文章主要介绍了h5之scrollIntoView用法详解,觉得挺不错的,现在分享给大家,也给大家做个参考。 如果滚动页面也是DOM没有解决的一个问题。为了解决这个问题,浏览器实现了一下方法,以方便开发人员如何更好的控制页面的...
收集整理的这篇文章主要介绍了h5之scrollIntoView用法详解,觉得挺不错的,现在分享给大家,也给大家做个参考。  如果滚动页面也是DOM没有解决的一个问题。为了解决这个问题,浏览器实现了一下方法,以方便开发人员如何更好的控制页面的滚动。在各种专有方法中,HTML5选择了scrollIntoView()作为标准方法。scrollIntoView()可以在所有的HTML元素上调用,通过滚动浏览器窗口或某个容器元素,调用元素就可以出现在视窗中。如果给该方法传入true作为参数,或者不传入任何参数,那么窗口滚动之后会让调动元素顶部和视窗顶部尽可能齐平。如果传入false作为参数,调用元素会尽可能全部出现在视口中(可能的话,调用元素的底部会与视口的顶部齐平。)不过顶部不一定齐平.

一、scrollIntoView

html

div>
    h2>
    scrollIntoView/h2>
    button id="roll1">
    scrollIntoView(false)/button>
    button id="roll2">
    scrollIntoView(true)/button>
    div>
    div id="myDiv">
    /div>
    div id="roll_top">
    scrollIntoView(ture)元素上边框与视窗顶部齐平span id="bottom">
    scrollIntoView(false)元素下边框与视窗底部齐平/span>
    /div>
    /div>
    /div>
    

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

div>
    h2>
    scroll/h2>
    div id="nav">
    div class="F1">
    floor1/div>
    div class="f2">
    floor2/div>
    div class="f3">
    floor3/div>
    div class="f4">
    floor4/div>
    div class="f5">
    floor5/div>
    /div>
    p>
    页面结构/p>
    div class="main">
    div id="f1">
    测试1/div>
    div id="f2">
    测试2/div>
    div id="f3">
    测试3/div>
    div id="f4">
    测试4/div>
    div id="f5">
    测试5/div>
    /div>
    /div>
    

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()}
    );
    }
    );
    

全部代码

!DOCTYPE html>
    html>
    head>
    meta charset="utf-8">
    title>
    h5之scrollIntoView控制页面元素滚动/title>
    style>
/*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;
}
    /style>
    /head>
    body>
    div>
    h2>
    scrollIntoView/h2>
    button id="roll1">
    scrollIntoView(false)/button>
    button id="roll2">
    scrollIntoView(true)/button>
    div>
    div id="myDiv">
    /div>
    div id="roll_top">
    scrollIntoView(ture)元素上边框与视窗顶部齐平span id="bottom">
    scrollIntoView(false)元素下边框与视窗底部齐平/span>
    /div>
    /div>
    /div>
    div>
    h2>
    scroll/h2>
    div id="nav">
    div class="f1">
    floor1/div>
    div class="f2">
    floor2/div>
    div class="f3">
    floor3/div>
    div class="f4">
    floor4/div>
    div class="f5">
    floor5/div>
    /div>
    p>
    页面结构/p>
    div class="main">
    div id="f1">
    测试1/div>
    div id="f2">
    测试2/div>
    div id="f3">
    测试3/div>
    div id="f4">
    测试4/div>
    div id="f5">
    测试5/div>
    /div>
    /div>
    script>
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);
        }
    ;
    }
    /script>
    script src="http://apps.bdimg.COM/libs/jquery/2.1.1/jquery.min.js?1.1.11">
    /script>
    script>
$(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()}
    );
    }
    );
    /script>
    /body>
    /html>
    
View Code

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

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!

html5ie元素控制滚动

若转载请注明出处: h5之scrollIntoView用法详解
本文地址: https://pptw.com/jishu/583501.html
H5启动APP原生页面的实例方法 node.js中文件之间的引入教程实例

游客 回复需填写必要信息