时间:2021-05-26
jquery的给元素绑定的事件可以用data方法取出来
通过$(element).data("events")来获取
// 比如给一个button绑定两个click事件$("button").click(function() { alert("1") });$("button").click(function() { alert("2") });// 这个时候点击该button会分别弹出 2 和1的alert框// 取出该button的所有click事件,是个数组$("button").data('events').click会看到两个click事件的数组
得到该数组,你可以调整顺序后再设回去
$("button").data('events').click = newEventArray;下面是这个方法的测试页面:
<span style="font-size:18px;"><%@ page contentType="text/html;charset=UTF-8" language="java" %> <!DOCTYPE HTML> <html> <head> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>测试jquery动态改变事件</title> <script type="text/javascript" src="/static/lib/jquery-1.6.2.min.js"></script> <script type="text/javascript" src="/static/lib/jquery.cookie.min.js"></script> <script type="text/javascript" src="/static/lib/util.min.js"></script> <script type="text/javascript" src="/static/lib/jquery.bgiframe.min.js"></script> <script type="text/javascript" src="/static/lib/jshashtable.min.js"></script> </head> <body> <h1>该demo用于测试jquery附加了事件以后可不可以动态改变事件有无,及顺序</h1> <input id="btn" type="button" value="点击我执行事件,分别执行三个次序弹窗"/><br/> <input id="btn_clear" type="button" value="点击清空执行事件,清空后第一个按钮无反应"/><br/> <input id="btn_revert" type="button" value="点击还原执行事件,点击后第一个按钮又会有反应"/><br/> <input id="btn_seq" type="button" value="点击我改变执行事件顺序,顺序会改变"/><br/> <script type="text/javascript"> $(document).ready(function(){ $("#btn").click(function(){ alert(1); }); $("#btn").click(function(){ alert(2); }); $("#btn").click(function(){ alert(3); }); var _arr_events= $("#btn").data("events")["click"]; $("#btn_clear").click(function(){ $("#btn").data("events")["click"]=undefined; }); $("#btn_revert").click(function(){ $("#btn").data("events")["click"]=_arr_events; }); }); </script> </body> </html> </span>声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
首先,jQuery事件绑定的时候,所有事件用$.data()方法存储到了$.cache里面,用data('events')可以反复获取到它们:复制代码代码如下:
用jQuery检查某个元素在网页上是否存在时,应该根据获取元素的长度来判断,代码如下:if($("#tt").length>0){//元素存在时执行的代码}
一、问题描述 用jQuery的append()方法动态添加了一段html代码之后,发现在为新添加的元素绑定click事件时无法获取该新元素。二、解决方法 度
使用jQuery选择出来的元素与数组非常类似,可以通过jQuery提供的一系列方法对其进行处理,包括长度、查找某个元素,截取某个段落等。1.获取元素的个数。在j
jquery1.10去除了.live()方法,新增了一个.on()方法来给元素绑定事件,具体用法如下:on(events,[selector],[data],f