zoukankan      html  css  js  c++  java
  • jquery

    以前jq绑定点击事件,是不是都是$("xxxx").click(function(){}) 

    嗯,人都是这样,不碰到坑,是不知悔改的。

    讲讲为什么要用delegate绑定事件。

    举个例子:我在class为demo的标签内的a 标签加了个点击事件,而点击事件里面执行的是把demo标签内,所有内容替换,同时也会重新插入a标签。

    比如:

    $(".app_infro_con").delegate("a","click",function() {     // 给class名为app_infro_con内的a 标签一个点击事件
        $.ajax({
            type:"get",
            url: Url,
            dataType:"jsonp",
            async: true,
            beforeSend:function(XMLHttpRequest){ 
                $(".app_infro_con").html("<img style=' 100%;' src='./images/loading.gif'/>");  // 替换app_infro_con内的内容,这时app_infro_con里面已经没有a标签了
            }, 
            success:function(res){
                var infro = res.data.notice
                $(".app_infro_con").html(infro);  // 这里的infro 是我外部定义的一个内容,里面是有a标签的,但是 如果用直接click去绑定,你会发现click只会触发一次,这是因为这里的a标签是新插入进来的。
            }
        })
    })

    嗯,终于从坑里出来了。可怕~

  • 相关阅读:
    零散的学习总结
    JSON学习整理
    轮播图
    关于new Object的小结
    js函数声明和函数表达式的区别
    float小结
    DOM文档加载步骤
    css主要的浏览器兼容性问题
    js for循环小记
    CANVAS中的lineWidth小计
  • 原文地址:https://www.cnblogs.com/lafitewu/p/8821387.html
Copyright © 2011-2022 走看看