小鱼塘--自说自话的地方

  • 小玩意
  • 小想法
记录自己技术和想法地方
  1. 首页
  2. html
  3. 正文

nicescroll使用教程

8 7 月, 2021 1929点热度 0人点赞 0条评论
内容目录

一,基本使用教程

<!DOCTYPE html>
<html>
    <head>
        <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.js"></script>
        <script src="https://cdn.bootcdn.net/ajax/libs/jquery.nicescroll/3.7.6/jquery.nicescroll.js"></script>

        <style>

            #bar{
                border: 1px solid #fff;
                margin-bottom: 10px;
            }

            #bar > button {
                margin-left: 10px;
            }

            #test_div{
                height: 200px;
                background-color: azure;
                overflow-y: auto;
            }

            #test_div>div{
                height: 100px;
                text-align: center;
                line-height: 100px;
            }

            #test_div>div:nth-child(1){
                background-color: aqua;
            }

            #test_div>div:nth-child(2){
                background-color: red;
            }

            #test_div>div:nth-child(3){
                background-color: yellow;
            }
        </style>

        <script>
            $(document).ready(function(){
                var nice = $('#test_div').niceScroll({autohidemode: false})

                console.log("what")
                console.log($("button"))

                //滚动顶部
                $("button").eq(0).on("click", ()=>{
                    console.log(nice)
                    nice.setScrollTop(0)
                })

                //滚动底部
                $("button").eq(1).on("click", ()=>{
              
                    //200 - 133 = 67
                    var view = nice.view
                    var h = nice.getContentSize().h
                    var view_max = h - view.h //得到最大滚动内容 == page.maxh 但动态加载元素
                    //不准确,所以自己计算得到准确
                    nice.setScrollTop(view_max)

                    var top = nice.getScrollTop()
                    console.log("top:" + top)
                    console.log(nice)
                })

                //打印nicescroll 几个属性
                $("button").eq(2).on("click", ()=>{
                    var max_scroll = nice.scrollvaluemax
                    console.log("最大滚动[滑梯-滑块]:" + max_scroll)
                    var view = nice.view
                    console.log("被安装滚动的div[这里是test_div]:" + JSON.stringify(view))

                    var top = nice.getScrollTop()
                    console.log("内容具体顶部:" + top)

                    var page = nice.page
                    console.log("page[代表当前内容大小]:" + JSON.stringify(page))
                    


                    var clientSize = nice.getContentSize()
                    console.log("top + view.h:" + top + "+" + view.h  + "=")
                    console.log("screenTop + view.height == 滚动的过显示的内容高度")
                    console.log("conentSize == scrollHeight == 等于div真正内容大小,非显示的,只能显示200,但真正有3个DIV,所以300" )
                    console.log("max_scroll_height = ScrollHeight - view.h:" + (clientSize.h - view.h) + "=" + page.maxh)


                    console.log(nice)
                })
            })


        </script>
    </head>

    <body>
        <div id="bar">
            <button>
                滚动顶部
            </button>
            <button>
                滚动到底部
            </button>
            <button>
                打印基本数据[F12]
            </button>
        </div>
        <div id="test_div">
            <div>
                div1
            </div>
            <div>
                div2
            </div>
            <div>
                div3
            </div>
        </div>
    </body>
</html>

滚动到底部可以通过

getScrollTop() + view.h == getContentSize().h 判断是否滚到底了

标签: nicescroll
最后更新:8 7 月, 2021

小鱼儿

爱研究技术,爱玩LOL

点赞
< 上一篇
下一篇 >

COPYRIGHT © 2022 小鱼塘. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang

湘ICP备18005349号