• jQuery相关方法9----事件相关


    一、事件冒泡和阻止事件冒泡

        <script src="http://libs.baidu.com/jquery/1.10.2/jquery.min.js"></script>
        <script>
            $(function(){
                $("#dv1").click(function(){
                    console.log($(this).attr("id"));
                });
                $("#dv2").click(function(){
                    console.log($(this).attr("id"));
                    return false;//阻止事件冒泡
                });
                $("#dv3").click(function(){
                    console.log($(this).attr("id"));
                    return false;//阻止事件冒泡
                });
            });
        </script>
        <div id="dv1" style=" 300px;height: 300px;background: #ccc;">
            <div id="dv2" style=" 200px;height: 200px;background: gray;">
                <div id="dv3" style=" 100px;height: 100px;background: red;"></div>
            </div>
        </div>

    二、事件触发

        <script src="http://libs.baidu.com/jquery/1.10.2/jquery.min.js"></script>
        <script>
            $(function(){
                //focus事件
                $("#txt").focus(function(){
                    $(this).next("span").text("事件触发了!!!");
                });
                //第一种:让别的元素的事件触发----对象.事件名字()
                $("#btn1").click(function(){
                    $("#txt").focus();  
                });
                //第二种:对象.trigger("事件类型")--触发事件的默认行为
                $("#btn2").click(function(){
                    $("#txt").trigger("focus");  
                });
                //第三种:对象.triggerHandler("事件类型")--不触发事件的默认行为
                $("#btn3").click(function(){
                    $("#txt").triggerHandler("focus");
                });
            });
           
        </script>
        <input type="button" value="触发1" id="btn1">
        <input type="button" value="触发2" id="btn2">
        <input type="button" value="触发3" id="btn3">
        <input type="text" id="txt"><span></span>

    三、事件参数对象

    • 推出事件参数对象
        <script src="http://libs.baidu.com/jquery/1.10.2/jquery.min.js"></script>
        <script>
            $(function(){
                //1.推出事件参数对象
                $("#btn").click(function(){
                    console.log(arguments.length);//1----一个参数
                    console.log(arguments[0]);//x.Event{}.是个对象
                });
    </script>
        <input type="button" value="点击" id="btn">

    • 例1:判断用户按下鼠标的时候,有没有按下alt键或者shift键或者ctrl键
        <script src="http://libs.baidu.com/jquery/1.10.2/jquery.min.js"></script>
        <script>
            $(function(){
                $(document).mousedown(function(e){
                    if(e.altKey){
                        console.log("按下了alt键和鼠标");
                    }else if(e.shiftKey){
                        console.log("按下了shift键和鼠标");
                    }else if(e.ctrlKey){
                        console.log("按下了ctrl键和鼠标");
                    }else{
                        console.log("按下了鼠标");
                    }
                });
          });
        </script>
    • 例2:用户在页面按键(A-K),可以改变div的背景颜色
        <script src="http://libs.baidu.com/jquery/1.10.2/jquery.min.js"></script>
        <script>
            $(function(){
                $(document).keydown(function(e){
                    switch(e.keyCode){
                        case 65:$("#dv").css("backgroundColor","red");break;
                        case 66:$("#dv").css("backgroundColor","orange");break;
                        case 67:$("#dv").css("backgroundColor","yellow");break;
                        case 68:$("#dv").css("backgroundColor","green");break;
                        case 69:$("#dv").css("backgroundColor","blue");break;
                        case 70:$("#dv").css("backgroundColor","purple");break;
                        case 71:$("#dv").css("backgroundColor","white");break;
                        case 72:$("#dv").css("backgroundColor","pink");break;
                        case 73:$("#dv").css("backgroundColor","yellowgreen");break;
                        case 74:$("#dv").css("backgroundColor","deeppink");break;
                        case 75:$("#dv").css("backgroundColor","grey");break;
                    }
                });
            });
        </script>
        <div id="dv" style=" 300px;height: 300px;"></div>

    四、事件参数对象下的几个属性

    • e.target----得到的是触发该事件的目标对象
    • e.currentTarget----得到的是触发该事件的当前对象
    • e.delegateTarget-----得到的是代理的这个对象
  • 相关阅读:
    取得元素节点的默认display值
    mass Framework emitter模块 v2
    memset函数详细说明
    八大排序算法总结
    电脑很卡,怎么办?这里帮你解决
    Android APK反编译详解(附图)
    java环境变量配置
    如何使用U盘安装操作系统 安装GHOST XP, xp纯净版
    c# WinForm开发 DataGridView控件的各种操作总结(单元格操作,属性设置)
    Js apply 方法 详解
  • 原文地址:https://www.cnblogs.com/EricZLin/p/9132590.html
Copyright © 2020-2023  润新知