• 〖大前端 - 基础入门三大核心之JS篇㊲〗- DOM改变元素节点的css样式、HTML属性


    • 说明:该文属于 大前端全栈架构白宝书专栏目前阶段免费如需要项目实战或者是体系化资源,文末名片加V!
    • 作者:不渴望力量的哈士奇(哈哥),十余年工作经验, 从事过全栈研发、产品经理等工作,目前在公司担任研发部门CTO。
    • 荣誉:2022年度博客之星Top4、2023年度超级个体得主、谷歌与亚马逊开发者大会特约speaker全栈领域优质创作者




    ⭐ 改变元素节点的css样式

    改变元素节点的CSS样式的语法示例:

    oBox.style.backgroundColor = 'red';
    oBox.style.backgroundImage = 'url(images/1.png)';
    oBox.style.fontSize = '32px';
    
    • 1
    • 2
    • 3

    需要注意的是,属性的名字要用”驼峰“的形式去写(因为js中短横线就是减号,所以不能用短横线写)。

    所以,想要改变一个css的属性值,就用上面的语法形式写就可以了。

    为什么要使用js来改变css的样式呢?这个在后面写到事件监听的时候会有很大的用处,比如监听到鼠标点击按钮的事件,就可以利用js改变按钮的样式,呈现出很好的动画效果。

    示例代码:

    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>Documenttitle>
        <style>
            #box {
                width: 100px;
                height: 100px;
                background-color: red;
            }
        style>
    head>
    <body>
        <div id="box">div>
        <script>
            var box = document.getElementById('box');  //获取元素节点
            box.style.backgroundColor = 'green';  //改变背景颜色
            box.style.borderRadius = '50%';  //改变圆角
        script>
    body>
    html>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24

    设置的样式是通过”行内“的形式设置的:

    image-20230403145652035

    ⭐ 改变元素节点的HTML属性

    标准W3C属性,如src、href等等,只需要直接打点进行更改即可

    示例代码:

    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>Documenttitle>
    head>
    <body>
        <img src="/images/1.jpg" alt="" id="pic">
        <a href="https://www.baidu.com/" id="baidu">去百度a>
    
        <script>
            //获取节点
            var oPic = document.getElementById('pic');
            var oLink = document.getElementById('baidu');
    
            //更改HTML属性
            oPic.src = '/images/2.jpg';
            oLink.href = 'https://news.baidu.com/';
            oLink.innerText = '去百度新闻';
        script>
    body>
    html>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24

    image-20230403152018433

    不符合W3C标准的属性,如data-n等等,需使用setAttribute()getAttribute()来设置、读取。

    setAttribute()设置属性值

    getAttribute()获取属性值

    不符合W3C标准的属性是在开发过程中自定义的,为了在具体的业务场景使用,在这里不必纠结这个属性的意义。

    示例代码:

    <body>
        <div id="box">div>
        <script>
            var box = document.getElementById('box');
            box.setAttribute('data-n', 10);    //设置一个不符合W3C规范的属性
            var n = box.getAttribute('data-n');   //获取一个不符合W3C规范的属性值
            alert(n);
        script>
    body>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    image-20230403154026111

    ⭐ 扩展:nodeType常用属性值

    节点的nodeType属性可以显示这个节点具体的类型。

    nodeType节点类型
    1元素节点,例如

    3文字节点
    8注释节点
    9document节点
    10DT节点
  • 相关阅读:
    树莓派之树莓派系统安装
    项目管理:项目经理一定要避开这四大误区
    Go语言函数知识点
    Boost Arm 交叉编译
    php源码zend_do_begin_namespace函数详解
    【规范】import引入的顺序
    迈向未来:Web3 技术开发的无限可能
    【立创机械狗从0到成品PCB画图总结】
    springcloud+nacos+gateway约会
    css常用选择器
  • 原文地址:https://blog.csdn.net/weixin_42250835/article/details/134485850