• 中文
    • English
  • 注册
  • 查看作者
  • 8:JS事件

    一.  点击事件

    添加点击事件有两种方式:

    • 根据id找到指定标签,为该标签添加事件

    • 直接在该标签上添加点击事件

    第一种方法的示例:

    <body>
    <button id="btn1">按钮1</button>
    <button id="btn2">按钮2</button>
    <script type="text/javascript">
        var btn1 = document.getElementById("btn1");
        var btn2 = document.getElementById("btn2");
        btn1.onclick = function () {
            alert("点击了按钮1");
    
        }
        btn2.onclick = function () {
            alert("点击了按钮2");
    
        }
    
    </script>
    </body>

    再来看一下第二种方法示例:

    <script type="text/javascript">
        var fun1 = function () {
            alert("点击了按钮1");
    
        }
        var fun2 = function () {
            alert("点击了按钮2");
    
        }
    
    </script>

    二 .  输入框事件

    和点击事件一样,添加输入框事件也有两种方式:

    • 根据id找到指定标签,为该标签添加输入框事件

    • 直接在该标签上添加输入框事件

    第一种方法的示例:

    <input id = "input" type="text" />
    <script type="text/javascript">
        var input = document.getElementById("input");
        input.onfocus = function () {
            console.log("得到了焦点");
        }
        input.onblur = function () {
            console.log("失去了焦点");
        }
    </script>

    再来看一下第二种方法示例:

    <input id = "input" type="text" onfocus="fun1()" onblur="fun2()"/>
    <script type="text/javascript">
        var input = document.getElementById("input");
        var fun1 = function () {
            console.log("得到了焦点");
        }
        var fun2 = function () {
            console.log("失去了焦点");
        }
    </script>

    三.  文档加载事件

    如果我们把script标签放在两个按钮中间,会发现按钮1的功能正常,但是按钮2的功能出了问题,这是因为我们在script标签中通过getElementById(“btn2”);获取按钮2时,按钮2还不存在。

    <body>
    <button id="btn1">按钮1</button>
    <script type="text/javascript">
        var btn1 = document.getElementById("btn1");
        var btn2 = document.getElementById("btn2");
        btn1.onclick = function () {
            alert("点击了按钮1");
        }
        btn2.onclick = function () {
            alert("点击了按钮2");
        }
    </script>
    <button id="btn2">按钮2</button>
    </body>

    为了解决上面的问题,我们有两种解决方案,首先可以和以前一样,把scrip标签放在两个按钮下面,但是该方法有一定的局限性,一般不采用这种方法,一般我们会在整个文档加载完成的时候,再去获取元素。可以使用window.onload来实现:

    <body>
    <button id="btn1">按钮1</button>
    <script type="text/javascript">
        window.onload = function () {
            var btn1 = document.getElementById("btn1");
            var btn2 = document.getElementById("btn2");
            btn1.onclick = function () {
                alert("点击了按钮1");
            }
            btn2.onclick = function () {
                alert("点击了按钮2");
            }
        };
    </script>
    <button id="btn2">按钮2</button>
    </body>

    山东省
  • 0
  • 0
  • 0
  • 1.5k
  • 请登录之后再进行评论

    登录
    单栏布局 侧栏位置: