jquery动态生成dom(比如append)导致js事件无效
2024-10-19 10:57:48
如果无效用这个方法: on() 方法在被选元素及子元素上添加一个或多个事件处理程序。
<div id="zkdiv">
<input type="button" value="展开" id="zk" class="zk"/> <br>
</div>
$("#zkdiv").on("click",".zk",function(){
console.log("on 点击一次");
});
var html2 = "<input type='button' class='zk' value='新生成的展开' />";
$("#zkdiv").append(html2);
这样一来处理函数就绑定到#zkdiv的选择器上去了,事件冒泡导致的性能损失会大大降低(使用该方法时要确保.on前面的选择器能选择到对象 否则不起作用)
click是点击事件,但是在页面加载完之后,jquery事件新添加的元素,用click的话是无法获取元素的,这个时候要用on去获取元素事件,简单的说页面加载完成时候页面显示的元素可以用on,也可以用click,但是页面加载完成之后后期再追加的元素只能用on。
提示:如需移除事件处理程序,请使用 off() 方法。
提示:如需添加只运行一次的事件然后移除,请使用 one() 方法。
引用:https://www.jb51.net/article/146535.htm
最新文章
- [Android Pro] PullToRefreshListView怎么设置各个item之间的间距
- Erp中的ATP和CTP是什么?两者有什么区别?
- 关于cout<;<;ends你不知道的那些事
- Web开发学习
- 导出Excel并下载,但无法定制样式的方法!
- 基于visual Studio2013解决C语言竞赛题之1087数字变换
- C语言JSON-RPC
- Java面试14|Session与Cookie
- 好程序员web前端分享javascript关联数组用法总结
- Windows10下安装Oracle 11g 64位的详细步骤
- BFC块级格式化上下文
- VMware安装CentOS7系统
- 整理一下pywinauto 的sendeys(py2.7)换成python3.6用PyUserInput
- php环境安装
- Spark SQL读写方法
- Linux tar压缩命令 排除某个目录 (根据man tar 总结)
- 《汇编语言 基于x86处理器》第十章 - 运行一个 16位实地址汇编程序
- 在TortoiseSVN使用clean up
- java基础57 css样式、选择器和css定位(网页知识)
- Android 开机Process xxx (pid xxxx) has died问题分析