首页 > web前端 > js教程 > 正文

jQuery中delegate与undelegate实例详解

黄舟
发布: 2017-06-26 10:56:22
原创
1372 人浏览过

没啥好说的,看代码吧 !

jQuery 版本 : 1.71

浏览器版本:chrome 21

<body>

    <ul class="a-list">
        <li><a href="javascript:;">test1</a></li>
        <li><a href="javascript:;">test2</a></li>
        <li><a href="javascript:;">test3</a></li>
        <li><a href="javascript:;">test4</a></li>
        <li><a href="javascript:;">test5</a></li>
    </ul>

    <ul class="button-list">
        <li><button>test1</button></li>
        <li><button>test2</button></li>
        <li><button>test3</button></li>
        <li><button>test4</button></li>
        <li><button>test5</button></li>
    </ul>

</body>
登录后复制
1 //绑定
2 $(document).delegate(&#39;a&#39;, &#39;click&#39;, function()
3 {
4     alert($(this).html());
5 });
登录后复制
1 //不能取消
2 $(document).undelegate(&#39;a&#39;);
3 
4 //可以取消
5 $(document).undelegate(&#39;a&#39;, &#39;click&#39;);
登录后复制
1 //绑定
2 $(document).delegate(&#39;a, button&#39;, &#39;click&#39;, function()
3 {
4     alert($(this).html());
5 });
登录后复制
//不能取消
$(document).undelegate(&#39;a&#39;, &#39;click&#39;);

//不能取消
$(document).undelegate(&#39;button&#39;, &#39;click&#39;);

//可以取消
$(document).undelegate(&#39;a, button&#39;, &#39;click&#39;);
登录后复制

注意:

1 //不能取消 (与绑定时选择器内容不一致,顺序颠倒)
2 $(document).undelegate(&#39;button, a&#39;, &#39;click&#39;);
3 
4 //不能取消 (与绑定时选择器内容不一致,少了一个空格)
5 $(document).undelegate(&#39;a,button&#39;, &#39;click&#39;);
登录后复制
1 //绑定
2 $(document).delegate(&#39;a, button&#39;, &#39;click mouseover&#39;, function(e)
3 {
4     alert($(this).html());
5 });
登录后复制
//略过部分测试,同上

//不能取消
$(document).undelegate(&#39;a&#39;, &#39;mouseover&#39;);

//可以取消
$(document).undelegate(&#39;a, button&#39;, &#39;click&#39;);

//可以取消
$(document).undelegate(&#39;a, button&#39;, &#39;mouseover&#39;);

//可以取消
$(document).undelegate(&#39;a, button&#39;, &#39;mouseover click&#39;);
登录后复制
1 //绑定
2 $(&#39;.a-list&#39;).delegate(&#39;a&#39;, &#39;click mouseover&#39;, function()
3 {
4     alert($(this).html());
5 });
登录后复制
//略过部分测试,同上
    
//不能取消
$(document).undelegate(&#39;a&#39;, &#39;click&#39;);

//可以取消
$(&#39;.a-list&#39;).undelegate(&#39;a&#39;, &#39;click&#39;);

//可以取消
$(&#39;ul&#39;).undelegate(&#39;a&#39;, &#39;click&#39;);

//可以取消
$(&#39;ul&#39;).undelegate();

//可以取消
$(&#39;.a-list&#39;).undelegate();
登录后复制

 

以上是jQuery中delegate与undelegate实例详解的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板