如何在JavaScript函数调用发生时查看它们

如何在JavaScript函数调用发生时查看它们,javascript,debugging,function-calls,Javascript,Debugging,Function Calls,是否可以在浏览器的JavaScript控制台中查看JavaScript函数调用?我知道您可以查看XHR,但是您可以查看函数调用吗 例如,我将鼠标悬停在页面上的某个元素上,就会弹出一个div。我知道有一个JavaScript函数被调用来显示弹出窗口,所以能够在控制台中查看这个调用会很好,这样我就可以看到调用了什么函数 我是否遗漏了某些信息或这是不可能的?除非您将该信息显式附加到DOM 但是,您可以在某些浏览器的开发人员工具中设置断点,例如Safari、Chrome和Firefox的Firebug。

是否可以在浏览器的JavaScript控制台中查看JavaScript函数调用?我知道您可以查看XHR,但是您可以查看函数调用吗

例如,我将鼠标悬停在页面上的某个元素上,就会弹出一个div。我知道有一个JavaScript函数被调用来显示弹出窗口,所以能够在控制台中查看这个调用会很好,这样我就可以看到调用了什么函数


我是否遗漏了某些信息或这是不可能的?

除非您将该信息显式附加到DOM


但是,您可以在某些浏览器的开发人员工具中设置断点,例如Safari、Chrome和Firefox的Firebug。

除非您将该信息显式附加到DOM


但是,您可以在某些浏览器的开发人员工具中设置断点,例如Safari、Chrome和Firefox的Firebug。

那么基本上您希望实时查看JS调用吗

Firefox上的Firebug扩展提供了()

基本上,您要做的是在代码中查找函数,然后在其上设置断点。然后,您应该能够像普通的调试器一样逐步执行它。应该不难找到与特定事件(如mouseover)相关联的JS函数——这个页面使用的是纯JS还是框架?如果是,哪一个

谷歌Chrome的内置开发工具提供了一个较小的子集——根据您的需要,其上的Profile选项卡可能有用吗


您需要跟踪此JS函数的具体目的是什么?我们可能会根据您的特殊需要为您推荐更好的工具。

那么基本上您希望实时查看JS调用

Firefox上的Firebug扩展提供了()

基本上,您要做的是在代码中查找函数,然后在其上设置断点。然后,您应该能够像普通的调试器一样逐步执行它。应该不难找到与特定事件(如mouseover)相关联的JS函数——这个页面使用的是纯JS还是框架?如果是,哪一个

谷歌Chrome的内置开发工具提供了一个较小的子集——根据您的需要,其上的Profile选项卡可能有用吗

您需要跟踪此JS函数的具体目的是什么?我们可能会根据您的特殊需要为您推荐一个更好的工具。

检查Firebug探查器,您可以使用它查看正在发生的事情的详细情况,而无需手动添加
控制台.log
语句

要使用profiler,只需转到Console选项卡并单击“Profile”按钮。然后使用你的应用程序一点,或者重新加载页面,然后再次单击“配置文件”按钮。然后,您将看到一个详细的报告,其中显示调用了哪些函数以及每个函数花费了多少时间

检查Firebug Profiler,您可以使用它查看正在发生的事情的详细情况,而无需手动添加到
控制台。记录
语句

要使用profiler,只需转到Console选项卡并单击“Profile”按钮。然后使用你的应用程序一点,或者重新加载页面,然后再次单击“配置文件”按钮。然后,您将看到一个详细的报告,其中显示调用了哪些函数以及每个函数花费了多少时间


+1用于提及调试器。这比传统的web跟踪调试要好得多。+1用于提及调试器。这比传统的web跟踪调试要好得多。如果我知道要找什么函数,调试器是一个不错的选择。但有时它不像查找onhover属性那么容易。例如,可以使用JQuery将函数附加到具有特定类的所有元素。没有什么具体的我正在寻找。我只是喜欢查看facebook等网页的来源,并试图弄清楚到底发生了什么。查看调用的函数将非常有用。不管它是否是您的站点。下载Firebug并转到脚本选项卡-它允许您“暂停”执行,然后逐步执行。它可以很快变得非常详细。不过需要注意的是,大多数实时代码通常都是缩小/模糊的,所以可能是:v()->r();a=2;t++[“$gg”]。。。。。etc@Chris是的,我知道我可以在另一个站点上使用调试器,但我不知道我在寻找什么,因为我不知道调用了什么函数,所以设置断点没有帮助。正如你所提到的,很多javascript都被缩小了,所以不管怎么说,它们都在一行上。没错。但您不需要设置断点,只需单击“暂停”按钮,然后执行您想要执行的操作watch@Chris非常感谢。“暂停”按钮在Firebug中工作正常。在Chrome中,我似乎无法让它正常工作,而我的扩展(如adblock)也会妨碍它的工作:/如果我知道我在寻找什么函数,调试器是一个不错的选择。但有时它不像查找onhover属性那么容易。例如,可以使用JQuery将函数附加到具有特定类的所有元素。没有什么具体的我正在寻找。我只是喜欢查看facebook等网页的来源,并试图弄清楚到底发生了什么。查看调用的函数将非常有用。不管它是否是您的站点。下载Firebug并转到脚本选项卡-它允许您“暂停”执行,然后逐步执行。它可以很快变得非常详细。不过需要注意的是,大多数实时代码通常都是缩小/模糊的,所以可能是:v()->r();a=2;t++[“$gg”]。。。。。etc@Chris是的,我知道我可以在另一个站点上使用调试器,但我不知道我在寻找什么,因为我不知道调用了什么函数,所以设置断点没有帮助。正如你所提到的,很多javascript都被缩小了,所以不管怎么说,它们都在一行上。没错。但您不需要设置断点,只需单击“暂停”按钮,然后执行该操作