微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

jquery – Chrome在try / catch块中暂停了异常,如何自动恢复?

我使用PrimeFaces(3.2),但问题是与Chrome相关的我认为.

一切都好,除非我打开了Chrome调试窗口.即,如果我关闭调试窗口,没有发生错误,根本没有例外(见下面的例外是try / catch-ed).

但是,如果我打开了Chrome调试窗口,并在网页上执行某些操作,那么调试器在以下位置暂停:

if ( !Sizzle.isXML( node ) ) {
    try { 
        if ( pseudoWorks || !Expr.match.PSEUDO.test( expr ) && !/!=/.test( expr ) ) {
            var ret = matches.call( node,expr ); <----- Paused here.

            // IE 9's matchesSelector returns false on disconnected nodes
            if ( ret || !disconnectedMatch ||
                    // As well,disconnected nodes are said to be in a document
                    // fragment in IE 9,so check for that
                    node.document && node.document.nodeType !== 11 ) {
                return ret;
            }
        }
    } catch(e) {}
}

这里node =< div ...和expr =:hidden.
经过调查后的jQuery源代码,似乎Chrome不支持node.querySelectorAll(‘:hidden’),.

为什么Chrome会在这里暂停,在try / catch块?怎么让它不再停顿了?

Chrome版本:17

解决方法

您是否在开发者控制台的脚本选项卡中不知不觉中启用了“暂停异常”选项?这是截图左侧第四个图标:

如果图标突出显示为蓝色,则表示已启用,任何异常会导致脚本暂停,就像您在其中设置断点一样,因此您可以对其进行调试.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


jQuery表单验证提交:前台验证一(图文+视频)
jQuery表单验证提交:前台验证二(图文+视频)
jQuery如何实时监听获取input输入框的值
JQuery怎么判断元素是否存在
jQuery如何实现定时重定向
jquery如何获取复选框选中的值
jQuery如何清空form表单数据
jQuery怎么删除元素节点
JQuery怎么循环输出数组元素
jquery怎么实现点击刷新当前页面