当我们使用jQuery动态加载html元素,但是元素上面又绑定了Click等事件,针对新添加的元素这些事件是无效的,那么应该怎样解决呢?
live方法
live( type, fn )

jQuery 1.3中新增的方法。给所有当前以及将来会匹配的元素绑定一个事件处理函数(比如click事件)。也能绑定自定义事件。

目前支持 click, dblclick, mousedown, mouseup, mousemove, mouseover, mouseout, keydown, keypress, keyup。

还不支持 blur, focus, mouseenter, mouseleave, change, submit

与bind()不同的是,live()一次只能绑定一个事件。

这个方法跟传统的bind很像,区别在于用live来绑定事件会给所有当前以及将来在页面上的元素绑定事件(使用委派的方式)。比如说,如果你给页面上所有的li用live绑定了click事件。那么当在以后增加一个li到这个页面时,对于这个新增加的li,其click事件依然可用。而无需重新给这种新增加的元素绑定事件。比如下面的代码。

<html><head> <script type="text/javascript" src="/jquery/jquery.js"></script> <script type="text/javascript">$(document).ready(function(){$("button").live("click",function(){$("p").slideToggle();});});</script> </head> <body> <p>这是一个段落。</p> <button>请点击这里</button>  </body>
</html>

on 方法
但是随着jQuery的版本升级,自从jQuery 1.9及其以上已经无法使用live了,那么没有办法了吗,不是的,对于jQuery1.9版本及其以上可以使用on,其效果等同于live。下面的on的使用方法

 <script>$(document).on("click", ".waiting-save", function () {$(this).html('@T("Saving...")')$(this).attr("disabled", "");SaveAction(this);});</script>

原文:https://www.zhidao91.com/jquery-html-live-on/

解决使用jQuery采用append添加的元素事件无效的方法相关推荐

  1. JavaScript采用append添加的元素错误

    1.错误叙述性说明 于IE览器上: Uncaught HierarchyRequestError:Failed to excute 'appendChild' on 'Node':The new ch ...

  2. jquery append 动态添加的元素事件on 不起作用的解决方案

    用jquery添加新元素很容易,面对jquery append 动态添加的元素事件on 不起作用我们该如何解决呢?on方法中要先找到原选择器(如例.info),再找到动态添加的选择器(如列.delet ...

  3. jq append添加的元素click获取不到的解决方法

    移动端手机ios网页,apppend添加html class名用 on()方法没效果 解决方案:在html里面给需要点击的元素加一个οnclick="javascript:void(0)&q ...

  4. textview点击事件 android,Android给TextView添加点击事件的实现方法

    首先设定TextView的clickable属性为true. 可以在布局文件中进行设定,比如: android:id="@+id/phone" android:clickable= ...

  5. jQuery给动态添加的元素绑定事件的方法

    jquery中绑定事件一般使用bind,或者click,但是这只能是对已经加载好的元素定义事件,那些后来添加插入的元素则需要另行绑定.在1.7版本以前使用live.但是在1.8版本以后推荐使用on.这 ...

  6. jQuery 为动态添加的元素绑定事件

    在使用jquery的方式为元素绑定事件时,我经常使用bind或者click,但这只能为页面已经加载好的元素绑定事件.像需要用ajax的方式请求远程数据来动态添加页面元素时,显然以上几种绑定事件的方式是 ...

  7. jQuery中append、insertBefore、after与insertAfter方法注意事项

    jQuery中append.appendTo.prepend.prependTo.before.insertBefore.after与insertAfter方法注意事项 这里列的是针对初学jQuery ...

  8. js关于子元素不触发父元素事件的若干方法

    2019独角兽企业重金招聘Python工程师标准>>> 方法一:event.cancelBubble=true; /* 最好用,js通用,event.cancelBubble=tru ...

  9. ios点击大头针气泡不弹出_高德 ios 自定义气泡添加点击事件无效问题

    在使用高德地图sdk开发的时候,需要自定义气泡吹出框,发现气泡添加的点击事件或者button都没响应. 原因:自定义的气泡是添加到大头针上的,而大头针的size只有下面很小一部分,所以calloutV ...

最新文章

  1. hibernate mysql缓存机制_Hibernate的缓存机制
  2. 代码中设置excel自定义格式为[红色]的处理方法
  3. JavaScrip调用腾讯地图
  4. ie6常见css bug
  5. 【知乎摘要】女生婚前应该清楚男友哪些方面了才能嫁给他
  6. javascript 学习笔记(一)
  7. python软件是什么原因引起的_Python对程序员重要的原因在哪里?
  8. LeetCode--434--字符串中的单词数
  9. Python3 OOP(一) 类和实例
  10. Thrift 的原理和使用
  11. app图标圆角角度_iOS和安卓APP启动图标的尺寸和圆角大小详解
  12. PKU ACM 1008 玛雅历
  13. Windows 7设备管理器有未知设备怎么办?
  14. vs2017下配置Xamarin
  15. 月入万元快递哥遭遇AI小鸟怎么办
  16. “瘾品”经济正当道,低度酒成为新财富密码?
  17. IOS破解软件,比较全的网站。
  18. 模拟键盘鼠标事件有两种方法
  19. qml----Model/View入门(四)XmlListModel
  20. 嵌套(Embeddings)

热门文章

  1. VS启动调试速度异常的缓慢问题
  2. 关于IIS8.5在配置完后出现503问题解决方案
  3. 2021母婴行业洞察报告.pdf(附下载链接)
  4. 声明式智能推荐系统应用架构探索
  5. 【报告分享】微信视频号新机遇白皮书.pdf
  6. 深度学习中的Normalization总结
  7. 关于在线机器学习ftrl_proximal_lr的二三件事
  8. Leetcode每日一题:349.intersection-of-two-arrays(两个数组的交集)
  9. 面试题简答题——数据库相关汇总
  10. 数学建模-12.预测模型