Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/440.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用户事件上的Javascript断点_Javascript_Google Chrome_Script Debugging - Fatal编程技术网

用户事件上的Javascript断点

用户事件上的Javascript断点,javascript,google-chrome,script-debugging,Javascript,Google Chrome,Script Debugging,当我在我的应用程序中单击一个按钮时,会执行一系列Javascript代码,在这种情况下,我单击“取消”按钮关闭当前打开的模式窗口。这个close按钮在HTML上看起来像这样: <a class="cancel close">Cancel</a> 取消 我需要的是一种跟踪Javascript中单击此元素所“触发”的内容的方法,而无需查看.js文件以获取对此DOM元素的引用(其中事件绑定到元素) 有没有一种方法可以在用户生成事件后在Javascript中创建某种断点,但我

当我在我的应用程序中单击一个按钮时,会执行一系列Javascript代码,在这种情况下,我单击“取消”按钮关闭当前打开的模式窗口。这个
close
按钮在HTML上看起来像这样:

<a class="cancel close">Cancel</a>
取消
我需要的是一种跟踪Javascript中单击此
元素所“触发”的内容的方法,而无需查看.js文件以获取对此DOM元素的引用(其中事件绑定到
元素)

有没有一种方法可以在用户生成事件后在Javascript中创建某种断点,但我不知道Javascript代码在哪里?为了找到代码所在的位置


我正在使用Google Chrome/Developer工具调试Javascript。

Firebug是FF的一个选项


打开开发者控制台;切换到脚本选项卡;在左边空白处(行号上)单击以设置断点。脚本的执行将在断点处暂停,您可以检查调用堆栈、局部变量等

或者,您可以在触发事件之前单击“暂停”,脚本执行将在脚本即将执行时暂停(如设置全局断点),并显示代码。然后,您可以继续、单步执行、单步执行或单步退出当前函数/表达式

您可以在Firebug和Safari、Chrome、Opera和IE中的内置控制台中实现这一点

编辑:我应该补充一点,如果有javascript驱动的动画、ajax轮询或其他代码以一定的间隔被调用,那么暂停按钮就不太有用,因为暂停按钮会停止任何脚本执行,直到单击“恢复”。因此,当调用动画的更新函数时,它会暂停,可能是在您有机会触发您感兴趣的代码之前

然而,在大多数(如果不是全部)开发人员控制台中,也有“异常中断”和“未捕获异常中断”选项。就像暂停按钮一样,它就像有一个全局断点,只是它只有在出现问题时才会停止。因此,如果试图查找的代码导致错误或引发异常,则可以将调试器设置为在发生错误或异常时暂停脚本