2012-07-20 124 views
1

当我打开我的应用程序的登陆页面的iPad下我收到以下错误在我的JavaScript(我有加载几个不同的JavaScript文件):神秘的错误

JavaScript: Error 
undefined 
TypeError: 'undefined' is not a function 

它既不告诉我哪文件来自哪里,也不知道错误是什么。关于如何以更容易,更易于理解的方式调试此任何想法?该应用程序在所有主流桌面浏览器(包括IE7)上都能正常工作

+0

这是很普通的(这意味着你要调用一个函数那...不存在)。您至少应该找到哪个功能失败(并且可能有TONS的原因)。 – 2012-07-20 11:12:30

+0

是的,我了解了很多,但仍然有办法让我在此浏览器下获得更具体的错误消息吗? – 2012-07-20 11:17:22

+0

您尝试过哪些浏览器?其他浏览器(不仅主要)可能会提供更好的错误描述。许多浏览器会抑制JS错误,因此即使没有错误消息,它们也可能在那里。 – Thomas 2012-07-20 11:20:18

回答

2

我发现了问题!我有我的应用程序托管在IIS Express上,我的所有JavaScript引用都是通过localhost上的虚拟目录完成的。

所以我有以下引用:

<script type="text/javascript" src="http://localhost/folder/script.js"></script> 

当我把它改为:

<script type="text/javascript" src="http://1.1.1.1/folder/script.js"></script> 

这一切都非常完美。

1

这里有一个备用的回答,可能会帮助谁遇到同样的错误信息的人:

1 iWebInspector

iWebInspector是iOS的模拟器调试工具。有了它,你可以在模拟器的浏览器加载一个网站,并可以访问WebKit的网络督察,以帮助调试

2.远程调试

一个非常简单的方式实现这一目标是使用iOS6的的远程调试界面,与Safari。然而,目前它尚未公开(不会更长),并且需要带有iOS6和Safari 6的iPad。您可以阅读关于此here的更多信息,但大多数细节仍在NDA之下。

远程调试它的东西,我最近使用过的,似乎很不错,但iWebInspector和模拟器也不错啊,我仍然使用这些网络资料