2016-01-28 124 views
0

我有一个网站与JavaScript,当我在该网站上移动我的鼠标,有功能触发。执行时,我需要逐步调试整个JavaScript代码。我需要找出哪个函数被调用(以及参数)。使用参数调试javascript函数

我该怎么做 - 我该如何使用它? 任何实时调试器?

编辑:现在我看到它是从另一个URL加载的脚本(我的网站是mydomain.tld,第二个脚本从seconddomain.tld加载)。第二个脚本被混淆/最小化,它控制网站上的点击(当点击时,它触发一个功能)。 是否有可能在我的网站上使用JavaScript来调用第二个脚本中的函数?如果是,请多好。

+0

希望你不会在压缩版本的js上工作。其他您可以使用调试器并放置一个断点。使用Chrome开发人员的工具。 – brk

回答

1

我需要找出哪些函数被调用

在控制台(萤火虫,开发工具等),您可以单击配置文件按钮,或者使用命令:

console.profile(); 
//... 
console.profileEnd(); 

它将显示在分析期间调用哪些函数。

然后你可以在每个人都提到的函数里面使用debugger;命令。

+0

我试着用[这个小提琴](https://jsfiddle.net/ktkyrzL0/)和控制台只输出* Profile'Profile 1'完成。*。 –

+0

@ E.Sundin jsFiddle不适合使用,也不能测试控制台命令,因为代码在iFrame中运行。 –

+0

我在本地进行了测试,并显示与小提琴相同的结果。你能否提供一个你知道有效的例子? –

0

只要将指令debugger放在任何位置,Chrome就会在该位置通过时停止。

不要忘记

<script> $(document).mousemove(function(event){console.log(event);}); </script>

并打开控制台窗口,浏览器,以保持调试器中打开按F12

0

,你可以跟踪鼠标移动事件,当鼠标移动它会显示所有的东西...

1

如果网站使用jQuery,那么您可以使用Chrome DevTools访问该函数源。转到元素面板中的事件侦听器边栏,展开感兴趣的事件并单击链接来源。

E.g. input#new-todo具有内部jQuery侦听器,但DevTools已经解析并显示了在框架之外的用户定义函数的链接。 Event listener sidebar

相关问题