在周视图下,在事件mouseOver
上,我在firebug中收到此错误消息:
Error: Syntax error, unrecognized expression: ,
throw new Error( "Syntax error, unrecognized expression: " + msg );
jquery-1.8.3.js (line 4680)
有没有人遇到过这样的问题,或者有没有办法调试错误的起源?
提前致谢
此致
答案 0 :(得分:2)
它看起来像一个选择器错误:
$("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
的属性,此属性包含对名为eg的函数的引用。它自我:
function a() {} // arguments.callee === a.
arguments.callee
具有非标准(但标准,仅在ECMA中未描述)属性caller
此属性包含对在运行时调用它的函数的引用。
function a() {
b()
}
function b() {}; // arguments.callee.caller === a;
a();
还有一些文档:
你知道console
- 对象吗?
答案 1 :(得分:0)
这个问题通过离开jQuery-Mobile并回到jQuery-UI来解决。 在jQuery-Mobile下,FullCalendar无法正常工作。
答案 2 :(得分:0)
问题是由jQuery-Mobile引起的。在jQuery-Mobile环境中,FullCalendar无法正常运行。回到jQuery-UI后,一切都恢复正常。
感谢您的帮助