zoukankan      html  css  js  c++  java
  • 一种用javascript实现的比较兼容的回到顶部demo + 阻止事件冒泡

    回到页面顶部demo

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Document</title>
        <style>
            body {
                height: 2000px;
            }
            #up {
                position: fixed;
                bottom: 0;
                right: 0;
                 100px;
                height: 100px;
                background: #c1c1c1;
            }
        </style>
    </head>
    <body>
        <div id="up"></div>
    
        <script>
            
            window.onload = function (){
                var oDiv = document.getElementById("up");
                var timer = null;
                var bySys = true;
    
                //如何检测用户拖动了滚动条
                window.onscroll = function (){
                    if (!bySys) {
                        clearInterval(timer);
                    }
                    bySys = false;
                }
                oDiv.onclick = function (){
                    timer = setInterval(function() {
                        var scrollTop = document.documentElement.scrollTop ||
                                document.body.scrollTop;
                        var iSpeed = Math.floor(-scrollTop/8);
                        
                        if (scrollTop === 0) {
                            clearInterval(timer);
                        }
                        bySys = true;
                        document.body.scrollTop = scrollTop + iSpeed;
                        document.documentElement.scrollTop = scrollTop + iSpeed;
                    }, 30);
                }
            }
        </script>
    </body>
    </html>

    阻止事件冒泡

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Document</title>
        <style>
            #box {
                 100px;
                height: 200px;
                background: #000;
                display: none;
    
            }
        </style>
    </head>
    <body>
        <input type="button" value="显示" id="btn">
        <div id="box"></div>
    
        <script>
            var oBtn = document.getElementById("btn");
            var oBox = document.getElementById("box");
            oBtn.onclick = function (ev){
                var oEvent = ev || event;
                oBox.style.display = 'block';
                oEvent.cancelBubble = true; // 阻止事件冒泡
            }
            document.onclick = function (){
                oBox.style.display = 'none';
            }
        </script>
    </body>
    </html>
  • 相关阅读:
    VlanTrunk
    2015届互联网名企校招网址一览表
    The declared package does not match the expected package
    经典的算法网站
    Nutch
    JTable只要一双击就进入编辑状态,禁止的方法实现
    Java通过JDBC链接数据库,数据库中wen
    Cisco Packet Tracer的使用(一)
    Nutch安装的几个网址
    面试经
  • 原文地址:https://www.cnblogs.com/zhongshanblog/p/4649524.html
Copyright © 2011-2022 走看看