search

Home  >  Q&A  >  body text

javascript - 如何查看 js (jquery) 绑定事件的函数代码

rt
比如有如下html, 使用jquery绑定了一个click事件
在一个陌生网站上,我们知道一个按钮绑定了事件,但是如何才能查看到绑定事件的那块代码呢?
chrome有event listeners,里面的listenerBody貌似可以看到一点原生js写的,
但是jquery写的有时候是定位到jquery源代码里面了...

<a id="apc" href="">x_x</a>
$('#apc').bind('click', function(){
    $('#apc').attr('href', 'http://segmentfault.com/');
});
天蓬老师天蓬老师2897 days ago465

reply all(3)I'll reply

  • PHPz

    PHPz2017-04-10 14:24:39

    $(node).data("events")$._data( node, "events" );
    反正差不多是类似的方式。你看一下jQuery中Event实现的源码就知道了。不同的版本,这些内部实现会有些不一样,所以得看对应版本源码实现。

    Chrome console: getEventListeners(ele);

    举例,你正在访问该问题,然后F12,在Chrome console下运行下面的代码即可:

    a=$("#a-1020000000446531 .post-big-vote");
    $._data(a[0],"events").click[0].handler.call(a);
    

    reply
    0
  • ringa_lee

    ringa_lee2017-04-10 14:24:39

    我专门为些写了一篇全面的文章,相信是你需要的答案:#宝哥教你#查看jquery绑定的事件函数

    reply
    0
  • 怪我咯

    怪我咯2017-04-10 14:24:39

    使用火狐,打开开发者工具,找到你要的DOM元素,旁边有个ev,点击它。

    reply
    0
  • Cancelreply