如何在jQuery中以最简单的方式进行调试
How to debug in jQuery the easiest way?
例如,如果我使用以下代码:如果此ID不在页面中,$('#iddoesnotexist').remove();
我不会收到错误,如何显示错误?
默认情况下,选择此行为是因为否则 jQuery 会定期抛出NullReference
异常,但这就是我正在寻找的......
我想你可以创建自己的jQuery扩展。我会*把它写成一个断言:
$.fn.mustExist = function() {
if(!this.length) {
throw new Error("Collection was empty.");
}
return this;
};
在开发过程中:
$('#iddoesnotexist').mustExist().remove();
* 实际上,我不会使用 jQuery; document.getElementById
还可以保护您免受这种事情的侵害;)
如果希望此行为成为所有 DOM 选择的默认行为,则可以为 jQuery
函数创建一个包装函数。
var my_$ = function(selector) {
var result = jQuery.apply(this, arguments);
if (typeof selector === "string" && !result.length)
throw new Error("No matches found");
return result;
};
my_$("#foobar"); // No matches found
请务必使用自己的引用,而不是覆盖jQuery
或$
标识符。
请参阅:
j查询调试和http://jqueryfordesigners.com/debugging-tools/和http://www.jquery4u.com/utilities/live-jquery-debugging-firebug/和http://samdutton.wordpress.com/2010/09/16/jquery-debugging-tips/和http://trainofthoughts.org/blog/2007/03/16/jquery-plugin-debug/
用于 jQuery 调试文章。而且,如评论中所述,最简单的调试方法是使用 console.log
.
相关文章:
- 如何在vs2002中调试html页面
- 为什么这在IE中的工作方式与在Firefox中不同
- 在AngularJS应用程序中使用封装指令和路由的推荐方式是什么
- Windows8应用程序(html&Javascript):从图片库(除了文件选择器)显示图像的另一种方式
- 在localhost Dev Box上测试JSONP请求的最佳方式
- 使用javascript存储变量的最安全方式
- JS表单提交"无法使用Chrome数据保护程序加载此页面.尝试重新加载页面.调试信息:POST CISmtuK
- 以可优化的方式使用requirejs加载模板
- 在Highcharts中,我们可以通过任何方式在渲染图表之前获得plotWidth和plotHeight
- 任何方式使AJAX调用Gmail API,而无需通过JS库
- 为react组件传递道具的最佳方式
- 为什么某些Javascript属性没有在调试器中以交互方式显示
- 我如何在谷歌chrome中调试一个以编程方式注入的JS文件
- 如何在jQuery中以最简单的方式进行调试
- 更改Netbeans为javascript函数参数自动设置空格缩进格式的方式
- 从谷歌Chrome控制台调试的最佳方式.js文件,如果它被加载和执行后按钮被点击
- 以独立方式调试JavaScript的选项有哪些?
- 调试器没有步进窗口.在Javascript中关闭
- 调试承诺的最佳方式是并行运行
- 如何用insertAfter和insertBefore代码以三进制方式转换if块