【发布时间】:2014-04-25 16:24:44
【问题描述】:
我们有一个使用 jQuery 和 Javascript 的网站(使用 HTTPS)。我们注意到,在某些情况下,Javascript 根本不会加载。在控制台中,它只是打印出一些 JS 错误(未定义),但我不能说这是因为 js 文件没有被包含或某处存在一些语法错误。
当我使用一些访客互联网时会发生这种情况(在斯坦福大学和埃默里大学尝试了访客 Wifi)。有时即使我在办公室也会发生这种情况,大约 10 分钟后就会恢复正常。它只发生在办公室的某些计算机上(所有带有 safari 的 MAC OSX),其中一些很好。除非我在一些访客 wifi 下,否则它就像完全随机的。
可能是什么原因?
最好, 杰克
编辑: 有人觉得它太板了,对不起这个问题,但我正在尽我所能描述这个问题。这以随机方式发生,并且不会通过在发生时刷新页面来解决。并且所有的javascript文件都以https方式包含。
编辑: 我注意到在某些情况下,我在调用它们的位置之后定义了函数。会不会是这个原因?
【问题讨论】:
-
听起来像是竞争条件。您是否异步加载任何脚本?你使用脚本加载器吗?
-
您是否使用 Chrome(Firefox、IE > 8、Safari 等)工具中的网络选项卡来确认通过网络传输的具体内容?
-
@jameslafferty 不,我刚刚检查了控制台。我在我的 safari 中真的找不到网络标签,有什么想法吗?
-
@TheShellfishMeme 我想我异步加载我的实时聊天。但我觉得这个问题在我集成实时聊天之前就存在(不确定)。我应该如何检查这个?你能更具体地了解一下这个比赛条件吗?您的意思是在加载 socket.io 之前调用实时聊天吗?但是刷新页面并没有改变结果,直到你等待一段时间它仍然没有加载。然后一切都很好,即使你刷新。
-
这确实很广泛,因为我们无法给出明确的答案,我们所能做的就是猜测可能的原因。我对此进行调试的建议是,作为第一步,您应该查看网络流量,例如 f.e.使用浏览器的开发者工具。在您遇到此错误的情况下,是否有任何突出的问题 - 任何中止的连接、意外的 HTTP 错误……?
标签: javascript jquery apache https