判断元素是否绑定事件的方法,看下官网的介绍。
On previous versions, you could call it like for other data :
obj.data('events');
In jQuery 1.8, this direct access was removed, so in recent versions you must call it like this :
$._data(obj[0],"events")
大概的意思是版本可以使用obj.data('event'); JQuery1.8版本取消了obj.data方法,改为$._data方法
注意:$._data(obj[0],"event") 中的obj[0],一定要加上数组[0]下标,否则会取不到数据
-------以下为举例
<!DOCTYPE html> <html> <head> <title></title> <script src="/demo/js/jq.js" type="text/javascript"></script> <script type="text/javascript"> $(function () { $("#btnTest").click(function () { alert('aa'); }); $("#btn").click(function () { //判断是否绑定了click事件 var objEvt = $._data($("#btnTest")[0], "events"); if (objEvt && objEvt["click"]) { //console.info(objEvt["click"]); alert("bind click"); } else { alert("Not bind click"); } }); }); </script> </head> <body> <input type="button" id="btn" value="测试是否绑定事件" /> <input type="button" id="btnTest" value="被测试按钮" /> </body> </html>
网友评论文明上网理性发言 已有0人参与
发表评论: