zoukankan      html  css  js  c++  java
  • jQuery给动态添加的元素绑定事件的方法

    jquery中绑定事件一般使用bind,或者click,但是这只能是对已经加载好的元素定义事件,那些后来添加插入的元素则需要另行绑定。在1.7版本以前使用live。但是在1.8版本以后推荐使用on。这里介绍jQuery中如何给动态添加的元素绑定事件
    在实际开发中会遇到要给动态生成的html元素绑定触发事件的情况

    <div id="testdiv">   <ul></ul> </div> 

    需要给<ul>里面动态添加的<li>标签添加click事件

    方法一:绑定live事件(live事件只在jquery1.9以下才支持,高版本不支持)。

    jquery 1.7版以前使用live动态绑定事件

    $("#testdiv ul li").live("click",function(){ 
      // alert('这里是动态元素添加的事件');
    });
    方法二:利用on()事件绑定 ($(ParentEle).on("click",".thisEle",function(){})
    //这里的ParentEle是 thisEle的父辈元素或者祖先元素,ParentEle可以是document,也可以是body等。<br><br><br>//
    注意:如果此时调用的函数是外部定义好的函数,那在调用的时候不要加(),不然会跳过点击事件直接触发函数
     
    jquery 1.7版以后使用on动态绑定事件
    $("#testdiv ul").on("click","li", function() { 
         //do something here 
      alert('这里是动态元素添加的事件');
     });
     
    //主动触发某个<li>的click事件
      
    // $("#testdiv ul li[name='apple']").trigger("click"); 
    $("#testdiv ul li").live("click",function(){
    });
  • 相关阅读:
    IBatis简介
    cntlm代理使用
    bash快捷键你知道几个?
    django的Form中添加属性
    EMACS 中文显示为方框
    git合并子树
    算法 排序 python 实现堆排序
    android org.eclipse.wst.sse.core 0.0.0' but it could not be found
    我的EMACS配置
    python 输入# 自动跳到行首
  • 原文地址:https://www.cnblogs.com/love201314/p/6406637.html
Copyright © 2011-2022 走看看