• 滚动 冻结 div demo


    原理看明白一点,但是关于那些top的位置,还是很模糊,这个demo是从太平洋扒下来的,有空再研究看看

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>滚动到顶部,锁定</title>
    <style type="text/css">
    .channelMove {
        overflow: hidden;
        position: fixed;
        top:0px;
        300px;
        z-index: 200;
    }
    #channelHtml {
      
        display: block;
     300px;
     height:500px;
        margin-bottom: 10px;
     border:  #000000 solid 1px;
    }

    </style>
    </head>
    <body>
    <br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/>
    <div id="dMark" class="clear" style="visibility:hidden;margin-top:-1px;"></div>
    <div id="channelHtml">

    </div>
    <br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/>
    </body>

    <script type="text/javascript">
    (function(){
    $$ = function(id){return document.getElementById(id)}

    function addClass(o,cn){var re = new RegExp("(\\s*|^)"+cn+"\\b","g");o.className +=o.className?(re.test(o.className)?"":" "+ cn):cn}
    function removeClass(o,cn){var re = new RegExp("(\\s*|^)"+cn+"\\b","g");var sName = o.className;o.className = sName.replace(re,"")}

    window.onscroll=window.onresize=function(){
    //document.documentElement.scrollTop  获取当前页面的滚动条纵坐标位置
    //document.body.scrollTop 网页被卷去的高
    //document.documentElement.clientTop  返回文档或元素的厚度
    //document.documentElement.getBoundingClientRect.top 获取页面元素的顶部位置
    var scrTop = document.body.scrollTop;
    var offTop = $$("dMark").getBoundingClientRect().top+scrTop-document.documentElement.clientTop;
    scrTop>offTop?addClass($$("channelHtml"),"channelMove"):removeClass($$("channelHtml"),"channelMove");
    }
    })();
    </script>

    </html>

  • 相关阅读:
    【译】Using .NET for Apache Spark to Analyze Log Data
    边缘缓存模式(Cache-Aside Pattern)
    GUID做主键真的合适吗
    在Java大环境下.NET程序员如何夺得一线生机
    板子
    P1525 关押罪犯 (并查集 / 二分图)| 二分图伪码
    算法学习笔记:匈牙利算法
    POJ
    19级暑假第三场训练赛
    POJ 1011 Sticks​ (DFS + 剪枝)
  • 原文地址:https://www.cnblogs.com/shoupifeng/p/2641967.html
Copyright © 2020-2023  润新知