【JavaScript】DOM 操作元素样式和元素类名

news2024/12/31 5:54:02

文章目录

  • 【JavaScript】DOM 操作元素样式和元素类名
    • 一. 操作元素样式
      • (1)操作行内元素
        • 1. 获取元素的样式
        • 2. 设置元素的样式
      • (2) 操作非行内元素和行内元素
        • 1. 获取元素的样式
    • 二. 操作元素类名
      • (1) className
        • 1. 获取元素的类名
        • 2. 设置元素的类名
        • 3. 追加元素的类名
      • (2) classList
        • 1. 获取元素的类名
        • 2. 追加元素类名
        • 3. 删除元素类名
        • 3. 切换元素类名
    • 三. 案例
      • 案例1:选项卡
      • 案例2:验证码倒计时
      • 案例3:分页器

【JavaScript】DOM 操作元素样式和元素类名

一. 操作元素样式

(1)操作行内元素

<div class="box" style="width: 100px; height: 100px; border: 1px solid red;">1</div>

1. 获取元素的样式

语法:元素.style.样式名

返回值:对应元素样式的属性值

var box = document.querySelector('.box');
console.log(box.style.height); // 100px
console.log(box.style.border); // 1px solid red
console.log(box.style["width"]); // 100px

注意:当样式名中带有连字符,必须使用数组关联语法,驼峰命名

2. 设置元素的样式

语法:元素.style.样式名 = 值

box.style.textAlign = 'center';
box.style["background-color"] = 'blue';

注意:只能给行内样式设置样式

(2) 操作非行内元素和行内元素

1. 获取元素的样式

语法

window.getComputedStyle(元素).样式名

返回值:对应元素样式的属性值

var box = document.querySelector('.box');
console.log(window.getComputedStyle(box).height); // 100px
console.log(window.getComputedStyle(box)["font-size"]); // 16px
console.log(window.getComputedStyle(box)["color"]); // rgb(0, 0, 0)

二. 操作元素类名

(1) className

<div class="box">操作类名</div>

1. 获取元素的类名

语法

元素.className

**返回值:**返回该元素的完整类名

var div = document.querySelector("div");
console.log(div.className); // box

2. 设置元素的类名

语法

元素.className = '类名'

注意:这样写会将原来的类名完全替换

var div = document.querySelector("div");
div.className = "div1"; // <div class="div1">操作类名</div>

3. 追加元素的类名

语法

元素.className += ' 类名'

:此方法不会覆盖元素原来的类名,而是在其后面追加类名。

var div = document.querySelector("div");
div.className += " div2"; // <div class="box div2">操作类名</div>

(2) classList

<style>
    .box {
        width: 200px;
        height: 200px;
        border: 2px solid #000;
    }
    .change {
        font-size: 40px;
        text-align: center;
        line-height: 200px;
        border: 5px solid red;
    }
</style>
<div class="box">操作类名</div>

1. 获取元素的类名

语法

元素.classList

返回值:返回该元素的完整类名

var div = document.querySelector("div");
console.log(div.classList); // box

2. 追加元素类名

语法

元素.classList.add("类名")
var div = document.querySelector("div");
div.classList.add("tom"); // <div class="box tom">操作类名</div>

3. 删除元素类名

语法

元素.classList.remove("类名")
var div = document.querySelector("div");
div.classList.remove("box"); // <div class="tom">操作类名</div>

3. 切换元素类名

语法

元素.classList.toggle("类名");
var div = document.querySelector("div");
div.onclick = function() {
    div.classList.toggle("change");
}

效果图

请添加图片描述

三. 案例

案例1:选项卡

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        * {
            margin: 0;
            padding: 0;
        }
        li {
            list-style: none;
        }
        ul {
            display: flex;
            width: 504px;
            height: 100px;
            margin: 50px auto 0;
        }
        ul li {
            flex: 1;
            height: 100px;
            border: 2px solid #000;
            text-align: center;
            line-height: 100px;
            font-size: 40px;
        }
        ol {
            width: 504px;
            margin: 0 auto;
        }
        ol li {
            width: 500px;
            height: 400px;
            border: 2px solid #000;
            border-top: 0;
            display: none;
            font-size: 25px;
            background-color: pink;
        }
        .click {
            background-color: pink;
            border-bottom: 0;
        }
        .show {
            display: block;
        }
        .border0 {
            border-right: 0;
        }
    </style>
</head>
<body>
    <ul>
        <li class="border0">Tab1</li>
        <li class="border0">Tab2</li>
        <li>Tab3</li>
    </ul>
    <ol>
        <li>
            <div>Tab1的内容</div>
        </li>
        <li>
            <div>Tab2的内容</div>
        </li>
        <li>
            <div>Tab3的内容</div>
        </li>
    </ol>
    <script>
        var list = document.querySelectorAll("ul li");
        var list2 = document.querySelectorAll("ol li");
        list.forEach(function(item, index) {
            item.onclick = function() {
                // 先删除所有的无序列表项的名为click的类
                list.forEach(function(tab) {
                    tab.classList.remove("click");
                });
                // 给当前点击项添加click类
                item.classList.add("click");
                list2.forEach(function(element) {
                    element.classList.remove("show");
                });
                list2[index].classList.add("show");
            }
        });
    </script>
</body>
</html>

效果图

请添加图片描述

案例2:验证码倒计时

<body>
    <button class="btn">点击获取验证码</button>
    <script>
        // 使用:间隔定时器、标记思维
        // 获取按钮
        var btn = document.querySelector(".btn");
        var flag = false;
        btn.onclick = function() {
            // 防止重复点击
            if (flag === true) {
                return;
            }
            flag = true;
            // 定义一个计数器
            var count = 6;
            // 使用间隔定时器
            var t = setInterval(function() {
                // 每隔一秒递减1
                count--;
                btn.innerHTML = `${count}s后重新获取`;
                // 到0s时关闭定时器
                if (count <= 0) {
                    clearInterval(t);
                    // 重新显示点击验证码
                    btn.innerHTML = "点击获取验证码";
                    flag = false;
                }
            }, 1000);

        }
    </script>
</body>

效果图

请添加图片描述

案例3:分页器

效果图

请添加图片描述

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <style>
        * {
            margin: 0;
            padding: 0;
        }
        
        .header,
        .footer {
            width: 1200px;
            margin: 0 auto;
            background-color: skyblue;
            display: flex;
            justify-content: center;
            align-items: center;
            font-size: 50px;
            height: 120px;
            color: #fff;
        }
        
        .footer {
            height: 300px;
        }
        
        ul,
        li {
            list-style: none;
        }
        
        ul {
            width: 1200px;
            display: flex;
            flex-wrap: wrap;
            margin: 0 auto;
            justify-content: space-between;
            padding-top: 10px;
        }
        
        li {
            width: 290px;
            border: 1px solid #333;
            margin-bottom: 10px;
            padding: 5px;
            box-sizing: border-box;
        }
        
        li>img {
            width: 278px;
            display: block;
        }
        
        .pagination {
            width: 1200px;
            margin: 10px auto;
            height: 50px;
            display: flex;
            align-items: center;
        }
        
        .pagination>.prev,
        .pagination>.next {
            width: 50px;
            height: 30px;
            cursor: pointer;
            background-color: orange;
            font-size: 24px;
            color: #fff;
            display: flex;
            justify-content: center;
            align-items: center;
        }
        
        .pagination>.disable {
            cursor: not-allowed;
            background-color: #ccc;
        }
        
        .pagination>.total {
            font-size: 30px;
            font-weight: 700;
            margin: 0 20px;
        }
        
        .pagination>select {
            font-size: 22px;
            padding-left: 20px;
            margin-left: 30px;
        }
    </style>
</head>

<body>
    <div class="header">网页头部</div>
    <div class="pagination">
        <span class="prev">&lt;</span>
        <span class="total">1 / 100</span>
        <span class="next">&gt;</span>
        <select>
            <option value="4">4</option>
            <option value="8">8</option>
            <option value="12">12</option>
            <option value="16">16</option>
        </select>
    </div>
    <!-- 内容 需要渲染 -->
    <ul></ul>
    <div class="footer">网页底部</div>
</body>

</html>
<script src="./dm_list.js"></script>
<script>
    // 获取所需的元素
    var ul = document.querySelector("ul");
    var prev = document.querySelector(".prev");
    var tal = document.querySelector(".total");
    var select = document.querySelector("select");
    var next = document.querySelector(".next");
    // 定义所需的变量
    var current = 1; // 当前页码,默认为1
    var pageSize = 4; // 每页的数据条数,默认为4
    var total = list.length / pageSize; // 总的页码数
    // 展示页面的函数
    function dataRander() {
        // 上一页按钮状态
        prev.classList = current === 1 ? 'prev disable' : 'prev';
        // 下一页按钮状态
        next.classList = current === total ? 'next disable' : 'next';

        tal.innerText = `${current}/${total}`;
        // 渲染数据
        var arr = list.slice((current - 1) * pageSize, current * pageSize);
        var str = "";
        arr.forEach(function(item) {
            str += `
                <li>
                    <img
                        src = ${item.pic}
                        alt=""
                    />
                    <p>${item.name}</p>
                    <p>城市: ${item.city}</p>
                    <p>地址: ${item.address}</p>
                    <p>价格: ${item.price}</p>
                    <p>时间: ${item.showTime}</p>
                </li>`;
        });
        ul.innerHTML = str;
    }
    dataRander();

    // 点击上一页触发事件
    prev.onclick = function() {
        if (current === 1) {
            return;
        }
        current--;
        dataRander();
    }

    // 点击上一页触发事件
    next.onclick = function() {
        if (current === total) {
            return;
        }
        current++;
        dataRander();
    }

    // 切换每页数据条数触发事件
    select.onchange = function() {
        // 获取每页条数
        pageSize = select.value;
        // 回到第一页
        current = 1;
        // 重新计算总数
        total = total = Math.ceil(list.length / pageSize);
        dataRander();
    }
</script>

外链的dm_list.js文件代码

var list = [
  {
    id: 625153951363,
    name: "2020西太湖国际音乐节",
    showTime: "2020.09.19-09.20",
    price: "199-399",
    city: "常州",
    address: "常州西太湖中国花卉博览景区北门",
    pic: "https://img.alicdn.com/bao/uploaded/https://img.alicdn.com/imgextra/i3/2251059038/O1CN01zJEpaN2GdSG1Xvo8y_!!2251059038.jpg",
  },
  {
    id: 624506842658,
    name: "2020舟山东海音乐节",
    showTime: "2020.09.04-09.06",
    price: "200-680",
    city: "舟山",
    address: "舟山市朱家尖南沙景区沙滩",
    pic: "https://img.alicdn.com/bao/uploaded/i4/2251059038/O1CN01L70FVl2GdSG2wpwyE_!!0-item_pic.jpg",
  },
  {
    id: 623216520608,
    name: "中国•磐安 2020氧气山水音乐节",
    showTime: "2020.08.22 周六 16:30",
    price: "280",
    city: "金华",
    address: "金华磐安花溪风景区",
    pic: "https://img.alicdn.com/bao/uploaded/https://img.alicdn.com/imgextra/i3/2251059038/O1CN01ECp69h2GdSFpoUPAm_!!2251059038.jpg",
  },
  {
    id: 624345993344,
    name: "2020“一生中最爱”七夕演唱会",
    showTime: "2020.08.25 周二 19:30",
    price: "180-580",
    city: "北京",
    address: "糖果TANGO-雍和宫店三层",
    pic: "https://img.alicdn.com/bao/uploaded/i3/2251059038/O1CN01WGNYBE2GdSFqXJgII_!!0-item_pic.jpg",
  },
  {
    id: 624170605605,
    name: "东海五渔节之敢潮音乐节",
    showTime: "2020.08.22 周六 18:00",
    price: "198-228",
    city: "舟山",
    address: "舟山嵊泗五龙乡听海广场(原黄沙村船厂)",
    pic: "https://img.alicdn.com/bao/uploaded/https://img.alicdn.com/imgextra/i1/2251059038/O1CN01eV5pR32GdSFxJUb0v_!!2251059038.jpg",
  },
  {
    id: 624000957041,
    name: "【聚光灯】周四周日爆笑脱口秀剧场",
    showTime: "2020.08.13-09.27",
    price: "99",
    city: "上海",
    address: "健力士醇黑坊",
    pic: "https://img.alicdn.com/bao/uploaded/i3/2251059038/O1CN01s9Jlz32GdSFv79hIO_!!0-item_pic.jpg",
  },
  {
    id: 623838540974,
    name: "2020真世界摇滚演出",
    showTime: "2020.08.29 周六 20:30",
    price: "120",
    city: "北京",
    address: "糖果TANGO-雍和宫店三层",
    pic: "https://img.alicdn.com/bao/uploaded/i2/2251059038/O1CN01HWbQXk2GdSFxARpRD_!!0-item_pic.jpg",
  },
  {
    id: 624699066028,
    name: "开心麻花首部悬疑惊悚喜剧《醉后赢家》",
    showTime: "2020.08.25-09.06",
    price: "80-1080",
    city: "北京",
    address: "地质礼堂剧场",
    pic: "https://img.alicdn.com/bao/uploaded/https://img.alicdn.com/imgextra/i2/2251059038/O1CN01Vv1mQO2GdSFvnmIDs_!!2251059038.png",
  },
  {
    id: 625219995330,
    name: "开心麻花经典爆笑舞台剧《乌龙山伯爵》",
    showTime: "2020.08.25-08.30",
    price: "80-1080",
    city: "北京",
    address: "北京展览馆剧场",
    pic: "https://img.alicdn.com/bao/uploaded/i3/2251059038/O1CN01znXuKj2GdSG6ACMMb_!!0-item_pic.jpg",
  },
  {
    id: 623454281510,
    name: "开心麻花重磅新戏《贼想得到你》",
    showTime: "2020.08.12 周三",
    price: "80-1280",
    city: "上海",
    address: "上汽上海文化广场",
    pic: "https://img.alicdn.com/bao/uploaded/i1/2251059038/O1CN013YAyeY2GdSFnXwgnQ_!!0-item_pic.jpg",
  },
  {
    id: 625314963280,
    name: "开心麻花重磅新戏《贼想得到你》",
    showTime: "2020.08.15-08.21",
    price: "100-1180",
    city: "上海",
    address: "虹桥艺术中心",
    pic: "https://img.alicdn.com/bao/uploaded/i3/2251059038/O1CN01Qb8wyX2GdSG30DCl4_!!0-item_pic.jpg",
  },
  {
    id: 622815888793,
    name: "开心麻花上海首部原创爆笑舞台剧《皇帝的新娘》",
    showTime: "2020.08.12-08.16",
    price: "80-1180",
    city: "上海",
    address: "上戏实验剧院",
    pic: "https://img.alicdn.com/bao/uploaded/i2/2251059038/O1CN01uie4Gf2GdSFlp1Rvv_!!0-item_pic.jpg",
  },
  {
    id: 624443634831,
    name: "孟京辉戏剧作品《我爱xxx》",
    showTime: "2020.08.13-08.16",
    price: "100-380",
    city: "北京",
    address: "蜂巢剧场",
    pic: "https://img.alicdn.com/bao/uploaded/https://img.alicdn.com/imgextra/i3/2251059038/O1CN01LwdJRL2GdSFtDPtRL_!!2251059038.jpg",
  },
  {
    id: 624095704875,
    name: "【8月8日-16日场次周年特惠低至四折】太阳马戏X绮幻之境 - 8月",
    showTime: "2020.08.12-08.30",
    price: "360-3460",
    city: "杭州",
    address: "杭州新天地太阳剧场",
    pic: "https://img.alicdn.com/bao/uploaded/i3/2251059038/O1CN01iyWOwU2GdSG2iMBsM_!!0-item_pic.jpg",
  },
  {
    id: 624163106935,
    name: "高达5公里定向挑战赛",
    showTime: "2020.09.26 周六",
    price: "108-388",
    city: "上海",
    address: "世纪公园",
    pic: "https://img.alicdn.com/bao/uploaded/https://img.alicdn.com/imgextra/i3/2251059038/O1CN01y2n1PI2GdSFtLmEtu_!!2251059038.jpg",
  },
  {
    id: 622064265074,
    name: "2020 FORMULA1 中国大奖赛(礼包&福袋)",
    showTime: "2020.07.04-12.31",
    price: "120-270",
    city: "上海",
    address: "上汽国际赛车场(上海国际赛车场)",
    pic: "https://img.alicdn.com/bao/uploaded/https://img.alicdn.com/imgextra/i2/2251059038/O1CN01ZHrnGM2GdSFbZjdUV_!!2251059038.jpg",
  },
  {
    id: 623662985515,
    name: "2020ChinaJoy电竞赛事荟萃",
    showTime: "2020.07.31-10.30",
    price: "0",
    city: "北京",
    address: "请到大麦APP和优酷APP观看",
    pic: "https://img.alicdn.com/bao/uploaded/i4/2251059038/O1CN01RpgBQ82GdSFoMD7h8_!!0-item_pic.jpg",
  },
  {
    id: 618307700815,
    name: "2020 FORMULA1 中国大奖赛(服装)",
    showTime: "2020.05.19-12.31",
    price: "248-620",
    city: "上海",
    address: "上汽国际赛车场(上海国际赛车场)",
    pic: "https://img.alicdn.com/bao/uploaded/i2/2251059038/O1CN01scI6Ly2GdSFEYDh7P_!!0-item_pic.jpg",
  },
  {
    id: 613334933912,
    name: "2020 FORMULA1 中国大奖赛(周边衍生品)",
    showTime: "2020.03.11-12.31",
    price: "35-160",
    city: "上海",
    address: "上汽国际赛车场(上海国际赛车场)",
    pic: "https://img.alicdn.com/bao/uploaded/https://img.alicdn.com/imgextra/i3/2251059038/O1CN01ZusbUY2GdSENL0iIN_!!2251059038.jpg",
  },
  {
    id: 613323173822,
    name: "2020 FORMULA1 中国大奖赛(帽品)",
    showTime: "2020.03.11-12.31",
    price: "200-335",
    city: "上海",
    address: "上汽国际赛车场(上海国际赛车场)",
    pic: "https://img.alicdn.com/bao/uploaded/https://img.alicdn.com/imgextra/i3/2251059038/O1CN01azreXu2GdSF9rIkGV_!!2251059038.jpg",
  },
  {
    id: 613940057617,
    name: "加速北京跳伞俱乐部高空跳伞体验",
    showTime: "2020.08.05-08.31",
    price: "2980",
    city: "北京",
    address: "北京市平谷区马坊镇通航产业基地",
    pic: "https://img.alicdn.com/bao/uploaded/https://img.alicdn.com/imgextra/i1/2251059038/O1CN01Ns9MZj2GdSFIp2udB_!!2251059038.png",
  },
  {
    id: 624453755826,
    name: "《你是演奏家2 · 超级金贝鼓》",
    showTime: "2020.08.21-08.23",
    price: "180-380",
    city: "上海",
    address: "美琪大戏院",
    pic: "https://img.alicdn.com/bao/uploaded/i4/2251059038/O1CN016u70M62GdSFrTL5GP_!!0-item_pic.jpg",
  },
  {
    id: 624211844323,
    name: "正版授权·大型儿童实景舞台剧《奥特曼宇宙之光》",
    showTime: "2020.09.05 周六",
    price: "180-580",
    city: "海口",
    address: "海南省歌舞剧院",
    pic: "https://img.alicdn.com/bao/uploaded/https://img.alicdn.com/imgextra/i2/2251059038/O1CN01ybwkiZ2GdSFy9894v_!!2251059038.jpg",
  },
  {
    id: 624672730925,
    name: "全国正版授权大型互动式儿童舞台剧 海底小纵队2—火山大冒险",
    showTime: "2020.11.15 周日",
    price: "80-480",
    city: "上海",
    address: "黄浦剧场-中剧场",
    pic: "https://img.alicdn.com/bao/uploaded/i1/2251059038/O1CN01mfDv5t2GdSFwbhzvt_!!0-item_pic.jpg",
  },
  {
    id: 624868314578,
    name: "大船文化·加拿大原版音乐启蒙全场互动亲子剧《你是演奏家2·超级金贝鼓》",
    showTime: "2020.09.06 周日",
    price: "180-380",
    city: "天津",
    address: "津湾大剧院大剧场",
    pic: "https://img.alicdn.com/bao/uploaded/https://img.alicdn.com/imgextra/i4/2251059038/O1CN01l16ZUE2GdSFzGWSPx_!!2251059038.png",
  },
  {
    id: 624450522367,
    name: "大船文化·法国艺术启蒙魔术剧《美术馆奇妙夜·星夜》中文版",
    showTime: "2020.09.06 周日",
    price: "120-280",
    city: "南京",
    address: "江苏大剧院--综艺厅",
    pic: "https://img.alicdn.com/bao/uploaded/i3/2251059038/O1CN01FMizHi2GdSG0AINxP_!!2-item_pic.png",
  },
  {
    id: 623125350409,
    name: "大船文化 法国艺术启蒙魔术剧《美术馆奇妙夜·星夜》中文版",
    showTime: "2020.08.27-08.30",
    price: "80-480",
    city: "上海",
    address: "上汽上海文化广场",
    pic: "https://img.alicdn.com/bao/uploaded/https://img.alicdn.com/imgextra/i4/2251059038/O1CN01CiAVft2GdSFpIawAw_!!2251059038.jpg",
  },
  {
    id: 623975390263,
    name: "正版授权大型实景舞台剧《奥特曼:宇宙之光》(杭州站)",
    showTime: "2020.12.13 周日",
    price: "68-480",
    city: "杭州",
    address: "杭州剧院",
    pic: "https://img.alicdn.com/bao/uploaded/https://img.alicdn.com/imgextra/i4/2251059038/O1CN01fUBSCY2GdSFsbnPPh_!!2251059038.jpg",
  },
];

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/137992.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【谷粒商城基础篇】项目简介与分布式概念

谷粒商城笔记合集 分布式基础篇分布式高级篇高可用集群篇简介&环境搭建项目简介与分布式概念&#xff08;第一、二章&#xff09;基础环境搭建&#xff08;第三章&#xff09;整合SpringCloud整合SpringCloud、SpringCloud alibaba&#xff08;第四、五章&#xff09;前端知…

如何使用WebRTC建立一个视频会议App(二)

如何使用WebRTC建立一个视频会议App(一)_音视频开发老马的博客-CSDN博客 服务器接收到‘’准备好了‘’的信息并通过发送同样信息通知第一个参与者。这就开始了被称作发信的交换信息过程&#xff0c;因此我们需要添加相应的handlers到client.js文件中。 当第一个参与者接收到准…

BGP在数据中心的应用3——构建自动化的BGP配置

注&#xff1a; 本文根据《BGP in the Datacenter》整理&#xff0c;有兴趣和英文阅读能力的朋友可以直接看原文&#xff1a;https://www.oreilly.com/library/view/bgp-in-the/9781491983416/上一部分笔记请参考&#xff1a;https://blog.csdn.net/tushanpeipei/article/deta…

【回答问题】ChatGPT上线了!推荐20个姿态估计深度学习模型

推荐20个姿态估计深度学习模型 好的&#xff0c;这里是 20 个深度学习模型用于姿态估计的推荐&#xff1a; 2D/3D Convolutional Neural Networks Recurrent Neural Networks Self-supervised Learning Generative Adversarial Networks Attention-based Networks Graph Neur…

git add .卡住不动

问题描述 代码修改完了准备上传到github&#xff0c;使用 git add . 命令发现一直卡住不动了。没办法只能强行退出&#xff0c;如下图所示。 解决办法 研究了一番&#xff0c;发现了这类问题的套路&#xff0c;在此给大家提供一个debug的思路。 首先需要知道&#xff0c;git a…

保姆级手把手图文并茂教你配置MAC系统Flutter环境

Flutter 是什么 Flutter是Google开源的构建用户界面&#xff08;UI&#xff09;工具包&#xff0c;帮助开发者通过一套代码库高效构建多平台精美应用&#xff0c;支持移动、Web、桌面和嵌入式平台。Flutter 开源、免费&#xff0c;拥有宽松的开源协议&#xff0c;适合商业项目…

返回一个数组中所有元素的小数部分、整数部分为两个数组 numpy.modf()

【小白从小学Python、C、Java】 【计算机等级考试500强双证书】 【Python-数据分析】 返回一个数组中所有元素的 小数部分、整数部分 为两个数组 numpy.modf() [太阳]选择题 关于以下python代码表述错误的一项是? import numpy as np anp.array([-0.5,1,1.5]) print…

《对线面试官》| 高频计算机网络面试题

目录1、说说 OSI 七层模型和 TCP/IP 四层模型的关系和区别2、说说 TCP 与 UDP 的区别3、TCP 是如何实现数据的可靠性&#xff1f;4、 TCP 协议如何提高传输效率&#xff1f;5、你知道 TCP 如何处理拥塞吗&#xff1f;6、为什么 TCP 链接需要三次握手&#xff0c;两次不可以么&a…

小程序后台数据交互-个人中心

目录 一&#xff0c;获取用户昵称和头像 登录过程 二&#xff0c;登录-小程序 三&#xff0c;后台 小程序服器配置 一&#xff0c;获取用户昵称和头像 登录过程 小程序登录 小程序可以通过微信官方提供的登录能力方便地获取微信提供的用户身份标识&#xff0c;快速建立小…

SOFARegistry | 聊一聊服务发现的数据一致性

文&#xff5c;肖健&#xff08;花名&#xff1a;昱恒&#xff09;蚂蚁集团技术专家专注于服务发现领域&#xff0c;目前主要从事蚂蚁注册中心 SOFARegistry 设计、研发工作。本文 9492 字 阅读 24 分钟PART. 1前言1.1 什么是服务发现在微服务的体系中&#xff0c;多个应用程序…

Hydra(九头蛇)工具使用

Hydra工具使用1.Hydra简介1.1.Hydra介绍1.2.Hydra支持协议1.3.Hydra下载2.Hydra使用2.1.Hydra基本使用方式2.2.Hydra常用参数2.3.Hydra注意事项2.4.Kail字典2.5.Hydra密码生成器3.Hydra案例3.1.创建账号密码文件3.2.SSH协议爆破3.2.1.靶机信息3.2.2.开始爆破3.2.2.1.不知账号3.…

C#语言实例源码系列-游戏-实现华容道

专栏分享点击跳转>Unity3D特效百例点击跳转>案例项目实战源码点击跳转>游戏脚本-辅助自动化点击跳转>Android控件全解手册 &#x1f449;关于作者 众所周知&#xff0c;人生是一个漫长的流程&#xff0c;不断克服困难&#xff0c;不断反思前进的过程。在这个过程中…

Rust个人学习之聊聊Rust的变量

今天看了Rust的变量相关内容&#xff0c;Rust变量很重要的一个设计点是: Rust变量默认是不可变的。 很难理解? 我们接下来一起研究一下Rust的变量&#xff0c; 在Rust中变量是通过关键字let进行声明的 let x 5; 上述语句就是定义了一个名称为x的变量&#xff0c;变量的值为…

修改esp idf hello_world_main.c,验证Strategy 策略基类。出现一个问题,加以解决

修改esp32 idf hello_world_main.c&#xff0c;验证Strategy 策略基类。出现几个问题&#xff0c;加以解决&#xff1a; 错误&#xff1a; …/main/hello_world_main.cpp: In function ‘void test01()’: …/main/hello_world_main.cpp:77:12: error: deleting object of ab…

入门力扣自学笔记228 C++ (题目编号:2042)

2042. 检查句子中的数字是否递增题目&#xff1a;句子是由若干 token 组成的一个列表&#xff0c;token 间用 单个 空格分隔&#xff0c;句子没有前导或尾随空格。每个 token 要么是一个由数字 0-9 组成的不含前导零的 正整数 &#xff0c;要么是一个由小写英文字母组成的 单词…

很好用的gRPC和WebSocket调试工具Apipost!强烈推荐

随着软件开发行业的发展&#xff0c;越来越多的公司和开发人员在工作中会涉及到gRPC和WebSocket等接口类型&#xff0c;但是目前市面上能支持这种接口的调试工具却几乎没有&#xff0c;国外的工具大都晦涩难懂&#xff0c;不符合我们的开发习惯&#xff0c;很难上手使用。 经过…

Android开发——APP ANR治理

一、背景介绍 ANR&#xff08;Application Not Response&#xff09;指应用程序无响应&#xff0c;通常出现在主线程被阻塞时&#xff0c;并伴随ANR弹窗出现。ANR发生时要么关闭当前app&#xff0c;要么等待&#xff0c;等待的结果大概率还是继续ANR&#xff0c;最终需要杀掉应…

在msys2上安装武汉大学的开源PPP解算软件-PRIDE PPP-AR

最近一篇文章《免费提供POSMV的GNSS数据解算服务&#xff0c;验潮仪丢失的一种补救》发表了以后&#xff0c;有一位相识的网友提供了一个重要信息&#xff1a;武汉大学PPP解算软件名字为PRIDE PPP-AR 开源了&#xff0c;其GUI自动下载星历文件进行自主解算。PRIDE PPP-AR 的官网…

2022年中小企业数字化转型路径报告(附下载链接)

省时查报告-专业、及时、全面的行研报告库省时查方案-专业、及时、全面的营销策划方案库【免费下载】2022年11月份热门报告盘点罗振宇2023年跨年演讲PPT原稿吴晓波2022年年终秀演讲PPT原稿2023年&#xff0c;如何科学制定年度规划&#xff1f;《底层逻辑》高清配图清华大学256页…

(机器学习深度学习常用库、框架|Pytorch篇)第三节:Pytorch之torchvision详解

文章目录一&#xff1a;torchvision概述二&#xff1a;torchvision.datasets&#xff08;1&#xff09;官方数据集&#xff08;2&#xff09;自定义数据集类&#xff08;3&#xff09;ImageFolder手动实现三&#xff1a;torchvision.transforms四&#xff1a;torchvision.model…