博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
jquery-event01
阅读量:6265 次
发布时间:2019-06-22

本文共 4315 字,大约阅读时间需要 14 分钟。

  hot3.png

$(function(){    var all=$("*");    all.each(function(){        var rel=this;        this.onclick=function(event){            //1.获取事件发生的目标            event=event?event:window.event;            //IE不知道target,而是使用srcElement来代替            //alert(event.target);            var target=event.target?event.target:event.srcElement;            //alert(target);            print("事件源:"+target.id+","+target.tagName+",事件对象:"+this.id+"--->"+this.nodeType);            //默认DOM0会产生事件冒泡,可以通过stopPropagation取消事件冒泡            event.stopPropagation();            //IE通过以下取消事件冒泡            //event.cancelBubble=true;            /*DOM0事件模型不支持事件捕获,*/        }    });    /* for(var i=0;i
");    }});///
$(function(){    /*DOM0模型带来最大的问题是,事件会被覆盖*/    $("#child")[0].onclick=function(){        print("abc");    };    $("#child")[0].onclick=function(){        print("abc1");    };    $("#child")[0].onclick=function(){        print("abc2");    };    $("#child")[0].onclick=function(){        print("abc3");    };    $("#child")[0].onclick=function(){        print("abc4");    };        function print(txt){        $("#content").append(txt+"
");    }});
$(function(){    /*使用DOM2之后可以满足事件的覆盖了,还提供了一个参数用来说明    是进行事件冒泡还是捕获*/    $("#child")[0].addEventListener("click",function(){        print("abc");    });    $("#child")[0].addEventListener("click",function(){        print("abc1");    });    $("#child")[0].addEventListener("click",function(){        print("abc2");    });    $("#child")[0].addEventListener("click",function(){        print("abc3");    });        function print(txt){        $("#content").append(txt+"
");    }});
$(function(){    var all=$("*");    all.each(function(){        var rel=this;        //IE支持attachEvent        this.attachEvent("onclick",function(){            //1.获取事件发生的目标            event=event?event:window.event;            //IE不知道target,而是使用srcElement来代替            //alert(event.target);            var target=event.target?event.target:event.srcElement;            //alert(target);            print("事件捕获--->事件源:"+target.id+","+target.tagName+",事件对象:"+this.id+"--->"+this.nodeType);        });                this.attachEvent("onclick",function(){            //1.获取事件发生的目标            event=event?event:window.event;            //IE不知道target,而是使用srcElement来代替            //alert(event.target);            var target=event.target?event.target:event.srcElement;            //alert(target);            print("事件冒泡--->事件源:"+target.id+","+target.tagName+",事件对象:"+this.id+"--->"+this.nodeType);        });                /* this.addEventListener("click",function(event){            //1.获取事件发生的目标            event=event?event:window.event;            //IE不知道target,而是使用srcElement来代替            //alert(event.target);            var target=event.target?event.target:event.srcElement;            //alert(target);            print("事件捕获--->事件源:"+target.id+","+target.tagName+",事件对象:"+this.id+"--->"+this.nodeType);        },true);                this.addEventListener("click",function(event){            //1.获取事件发生的目标            event=event?event:window.event;            //IE不知道target,而是使用srcElement来代替            //alert(event.target);            var target=event.target?event.target:event.srcElement;            //alert(target);            print("事件冒泡--->事件源:"+target.id+","+target.tagName+",事件对象:"+this.id+"--->"+this.nodeType);        },false);    }); */        function print(txt){        $("#content").append(txt+"
");    }});/
$(function(){    //使用jquery把浏览器之间的问题全部屏蔽了,使用的事件模型:DOM2    $("#child").bind("click",function(event){        print(event.target);    });        /*使用jquery的bind()可以通过第二个参数来传递相应的JSON参数进去    通过event.data可以获取传入的参数值*/    $("#child").bind("click",{"name":"zs","age":12},function(event){        //print(event.target+"aaa");        print(event.data.name);    });    function print(txt){        $("#content").append(txt+"
");    }});///
$(function(){    $("*").bind("click",function(event){        print(event.currentTarget.id+"--->"+event.target.id);        /*对于jquery依然存在着事件冒泡,可以使用以下函数取消事件冒泡*/        event.stopPropagation();        /*如果对于表单form或超链接a,可能不希望继续提交或者继续访问超链接,可以        通过event.preventDefault()阻止事件继续往下走,        特别注意:这个和事件冒泡没有任何关系*/        event.preventDefault();    });                function print(txt){        $("#content").append(txt+"
");    }});

转载于:https://my.oschina.net/686991/blog/364053

你可能感兴趣的文章
go标准库的学习-hash
查看>>
log4j容器初始化探究
查看>>
Linux通配符与特殊符号知识大全
查看>>
[BZOJ5105]【[Code+#1]晨跑】
查看>>
bootstrap到底是用来做什么的(概念)
查看>>
高并发服务端分布式系统设计概要
查看>>
sqlite3.datebase.serialize(function(){})的问题
查看>>
Xml通用操作类
查看>>
网站访问数据统计工具
查看>>
11面向对象封装案例
查看>>
动态加载js小笔
查看>>
C#_IComparer实例 - 实现ID或者yearOfscv排序
查看>>
2016 hosts
查看>>
TypeKit ,use online fonts
查看>>
原生Ajax
查看>>
文件上传及下载
查看>>
七、jquery对象的学习,有难度
查看>>
Ajax_数据格式_HTML
查看>>
微信公众账号怎么快速增加粉丝
查看>>
HBase 笔记1
查看>>