在周视图下,mouseOver
我在萤火虫中收到此错误消息:
Error: Syntax error, unrecognized expression: ,
throw new Error( "Syntax error, unrecognized expression: " + msg );
jquery-1.8.3.js (line 4680)
有没有人遇到过这样的问题,或者有没有办法调试错误的根源?
提前
致谢
在周视图下,mouseOver
我在萤火虫中收到此错误消息:
Error: Syntax error, unrecognized expression: ,
throw new Error( "Syntax error, unrecognized expression: " + msg );
jquery-1.8.3.js (line 4680)
有没有人遇到过这样的问题,或者有没有办法调试错误的根源?
提前
致谢
它看起来像一个选择器错误:
$("abc, def, "); // or
$("<div,");
不确定。
如果您查看 jQuery 1.8.3 的源代码,您会在 4680 行附近找到这些行:
/*LINE: 4679*/ Sizzle.error = function( msg ) {
/*LINE: 4680*/ throw new Error( "Syntax error, unrecognized expression: " + msg );
/*LINE: 4681*/ };
很难从这里调试您的代码,但您可以尝试在arguments.callee.caller
之前放置throw new Error
:
Sizzle.error = function( msg ) {
console.log( arguments.callee.caller );
throw new Error( "Syntax error, unrecognized expression: " + msg );
};
这会告诉你什么函数正在调用这个函数。从那里您可以尝试使用相同的方法向上旅行。最后你会发现你的问题。
是什么arguments.callee.caller
?
arguments
是一个类似属性的数组,包含解析为函数的所有参数:
function a() {}
a(1, 2, 3); // Inside a arguments will be: [1, 2, 3]
arguments
有一个名callee
为此属性的属性包含对名为例如的函数的引用。它自己:
function a() {} // arguments.callee === a.
arguments.callee
有一个称为此属性的非标准(但标准,只是未在 ECMA 中描述)caller
属性包含对在运行时调用它的函数的引用。
function a() {
b()
}
function b() {}; // arguments.callee.caller === a;
a();
还有一些文档:
你知道console
-object吗?
通过离开 jQuery-Mobile 并仅返回 jQuery-UI 解决了这个问题。FullCalendar 在 jQuery-Mobile 下无法正常工作。
问题是由 jQuery-Mobile 引起的。FullCalendar 无法在 jQuery-Mobile 环境中正常运行。回到 jQuery-UI 之后,一切都恢复正常了。
感谢您的帮助