jquery获取元素绑定的事件

逃离我推掉我的手 2022-06-13 06:09 777阅读 0赞

在调试jquery的事件绑定时会用到。查看某元素是否绑定上了事件。

在JQuery1.8之前:

  1. var obj=$('div');var events=obj.data('events');

在JQuery1.8中:

  1. var objs=$('div');var events=$._data(objs[0],'events');

如果想查看events里具体都哪些事件。可以使用自定义的一个JS方法,把任意对象转换为json格式的字符串

alert(obj2String(events));

/**

* 将JS的任意对象输出为json格式字符串

* @param {Object} _obj: 需要输出为string的对象

*/

var obj2String = function(_obj) {

  1. var t = typeof (\_obj);
  2. if (t != 'object' || \_obj === null) \{
  3. // simple data type
  4. if (t == 'string') \{
  5. \_obj = '"' + \_obj + '"';
  6. \}
  7. return String(\_obj);
  8. \} else \{
  9. if ( \_obj instanceof Date) \{
  10. return \_obj.toLocaleString();
  11. \}
  12. // recurse array or object
  13. var n, v, json = \[\], arr = (\_obj && \_obj.constructor == Array);
  14. for (n in \_obj) \{
  15. v = \_obj\[n\];
  16. t = typeof (v);
  17. if (t == 'string') \{
  18. v = '"' + v + '"';
  19. \} else if (t == "object" && v !== null) \{
  20. v = this.obj2String(v);
  21. \}
  22. json.push(( arr ? '' : '"' + n + '":') + String(v));
  23. \}
  24. return ( arr ? '\[' : '\{') + String(json) + ( arr ? '\]' : '\}');
  25. \}

};

发表评论

表情:
评论列表 (有 0 条评论,777人围观)

还没有评论,来说两句吧...

相关阅读