javascript - 我可以在调试时只输入 "step over"jQuery 代码吗?

标签 javascript jquery visual-studio firefox firebug

在逐步执行使用 jQuery 的脚本时,我只是想要测试我编写的代码。我不想进入 jQuery 文件——我不是在调试 jQuery,只是在调试我自己的文件。

有什么方法可以告诉调试器不要单步执行 jQuery 文件吗?我使用 Visual Studio + Internet Explorer 以及 Firefox + Firebug 来单步执行代码...并且两者似乎都喜欢单步执行数十个 jQuery 语句。

例如,假设我有一个这样的脚本:

$("div").each(function() {
   $(this).hide();
});

从技术上讲,这是一条语句 - 因此“Step Over”将立即执行所有代码,这将跳过内部“hide”语句。然而,“Step Into”将带我进入 jQuery 代码,在进入“hide”语句之前我必须单步执行数十行代码。

我希望调试器完全忽略 jQuery 代码,这样我就可以轻松地单步执行我自己的代码,而永远不会单步执行 jQuery 代码。

在 C# 中,可以通过使用类上的 [DebuggerStepThrough()] 属性来实现这一点。但这对 JavaScript 没有帮助。

最佳答案

是的,你可以

至少在 FireFox (25+) 和 Chrome (30+) 中是这样。

在 FireFox 中,此功能称为 "Black boxing"并将在 FireFox 25 中提供。它可以让我们完全满足您的需求:

Nick Fitzgerald and Chris Heilmann: "New Features of Firefox Developer Tools: Episode 25"

此功能也被引入到 Chrome (v30+) 中,尽管它更难查找/配置。它被称为“跳过具有特定名称的源”,Collin Miller 在描述如何配置它方面做得非常出色:

Collin Miller: "Tips and Tricks: Ignoring library code while debugging in Chrome"

我现在正在 Chrome 中使用它。它就像一个魅力,节省了我很多时间。

关于javascript - 我可以在调试时只输入 "step over"jQuery 代码吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2885041/

相关文章:

javascript - 从外部js文件调用点击功能

jquery - jquery默认切换效果

jquery - 更改水平形式以左对齐( Bootstrap )

sql-server - 如何从 SSIS 中的 Google Analytics 获取目标名称或目标 ID?

javascript - for循环列表倒计时只出现在第一个

javascript - 远程视频流根本不显示

javascript - 如何使用 Grunt 在构建中包含图像?

javascript - 范围选择器更改时的 Highstock 更改刻度间隔

c++ - 该项目已过时

c# - 将用户控件添加到用户控件时丢失样式