目录

📒 JavaScript 基础实例

# 1️⃣ 事件 🌰

  1. div 跟随鼠标移动

    获取鼠标相对于窗口的坐标 clientXclientY

    但是要注意网页高度大于网页窗口的高度时,鼠标相对于窗口的坐标与 div 的偏移量会出现偏差,需要加上滚动条的滚动长度。

    使用 scrollTop 获取滚动条的滚动长度,需要注意对不同的浏览器的兼容问题:

    window.onload = function () {
        // 获取 box1 
        var box = document.getElementById("box1");
    
        // 绑定鼠标移动时加你
        document.onmousemove = function (event) {
            event = event || window.event; // 解决兼容问题
    
            // 获取鼠标坐标,数值没有单位
            // 是相对于可见窗口的坐标 
            // 而 div 的偏移量是相对于整个网页
            var left = event.clientX;
            var top = event.clientY;
    
            // 获取滚动条top和left
            // document.body.~ 适用于 Chrome
            // document.documentElement.~ 适用于火狐和 IE
            var st = document.body.scrollTop || document.documentElement.scrollTop;
            var sl = document.body.scrollLeft || document.documentElement.scrollLeft;
    
            // 设置 box1 的偏移量
            box1.style.left = left + sl + 'px';
            box1.style.top = top + st + 'px';
        }
    }
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25

    直接获取鼠标相对于整个网页的坐标 pageXpageY 即可:

    var left = event.pageX;
    var top = event.pageY;
    
    // ... 
    
     box1.style.left = left + 'px';
    box1.style.top = top + 'px';
    
    1
    2
    3
    4
    5
    6
    7

# 2️⃣ JavaScript 定时器 🌰

  1. ⏲️ 定时器每秒自动切换

定时器的关闭与停止、定时器的唯一标识;

📢 上次更新: 2022/09/02, 10:18:16