zoukankan      html  css  js  c++  java
  • 0162 DOM操作元素 之 表单元素的属性操作、仿京东显示密码案例

    利用 DOM 可以操作如下表单元素的属性: type、value、checked、selected、disabled。

    获取属性的值

    元素对象.属性名

    设置属性的值

    元素对象.属性名 = 值

    表单元素中有一些属性如:disabled、checked、selected,元素对象的这些属性的值是布尔型。【也可以是disabled】


    案例代码

    <body>
        <button>按钮</button>
        <input type="text" value="输入内容">
        <script>
            // 1. 获取元素
            var btn = document.querySelector('button');
            var input = document.querySelector('input');
            // 2. 注册事件 处理程序
            btn.onclick = function() {
                // 表单里面的值 文字内容是通过 value 来修改的
                input.value = '被点击了';
                // 如果想要某个表单被禁用 不能再点击 disabled  我们想要这个按钮 button禁用
                // btn.disabled = true;  // 可以写成 btn.disabled = 'disabled';
                // this 指向的是事件函数的调用者 btn
                this.disabled = true;  // 可以写成 this.disabled = 'disabled';
                
            }
        </script>
    </body>
    

    1.5.5 案例:仿京东显示密码

    <!DOCTYPE html>
    <html lang="en">
    
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <meta http-equiv="X-UA-Compatible" content="ie=edge">
        <title>Document</title>
        <style>
            .box {
                position: relative;
                 400px;
                border-bottom: 1px solid #ccc;
                margin: 100px auto;
            }
            
            .box input {
                 370px;
                height: 30px;
                border: 0;
                outline: none;
            }
            
            .box img {
                position: absolute;
                top: 2px;
                right: 2px;
                 24px;
            }
        </style>
    </head>
    
    <body>
        <div class="box">
            <label for="">
                <img src="images/close.png" alt="" id="eye">
            </label>
            <input type="password" name="" id="pwd">
        </div>
        <script>
            // ① 核心思路: 点击眼睛按钮,把密码框类型改为文本框就可以看见里面的密码
            // ② 一个按钮两个状态,点击一次,切换为文本框,继续点击一次切换为密码框
            // ③ 算法:利用一个flag变量,来判断flag的值,如果是1 就切换为文本框,flag 设置为0,如
            // 果是0 就切换为密码框,flag设置为1
            // 1. 获取元素
            var eye = document.getElementById('eye');
            var pwd = document.getElementById('pwd');
            // 2. 注册事件 处理程序
            var flag = 0;
            eye.onclick = function() {
                // 点击一次之后, flag 一定要变化
                if (flag == 0) {
                    pwd.type = 'text';
                    eye.src = 'images/open.png'; // 这里可以把 eye 改成 this
                    flag = 1; // 赋值操作
                } else {
                    pwd.type = 'password';
                    eye.src = 'images/close.png';
                    flag = 0;
                }
            }
        </script>
    </body>
    
    </html>
    
  • 相关阅读:
    php面向对象方法
    php数组中元素的操作
    PHP数组的排序
    [设计模式]抽象工厂模式
    [设计模式]建造者模式
    [设计模式]工厂方法模式
    [设计模式]简单工厂模式
    [设计模式]单例模式
    设计模式系列
    JAVA 设计模式 状态模式
  • 原文地址:https://www.cnblogs.com/jianjie/p/12167271.html
Copyright © 2011-2022 走看看