2013-04-21 49 views
-2

我一直在这个特定的网站上有这个问题,但它开始影响整体体验。 jQuery并不总是正常工作。例如,我有一个使用Jquery的自定义下拉页面。大多数情况下,它会加载10%的时间点击按钮,div不显示。我真的不知道我的网站发生了什么。jQuery并不总是加载

+0

如果您正在使用$(function(){..}),那么声音就像窗口准备就绪,不会加载。句法。使用chrome的网络检查器来查看是否有任何资源阻止页面完全加载,就像我在使用$(document).ready(function(){..)时托管在另一个域 – Bryan 2013-04-21 00:47:46

+0

上的JavaScript文件不会有什么区别。 });? – user1933224 2013-04-21 00:51:22

+0

你指出的方式是我所说的,他们都做同样的事情。你需要找到的重要的事情是在你的javascript被允许触发之前,你是否在等待外部资源。你有一个示例URL? – Bryan 2013-04-21 01:05:27

回答

0

你链接到谷歌CDN上的jQuery吗?如果没有你,你应该See here as to why.

谷歌的CDN几乎总是起来,但它仍然是很好的做法,总是有jQuery的备份本地副本也是如此。这段代码首先链接到谷歌的CDN版本。如果出于任何原因失败,它将加载您的本地副本。这应该修复任何jQuery不加载的可能性。

如上所述,在文档准备好之前,您还应确保不启动自定义下拉菜单。

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script> 
<script> 
if (!window.jQuery) { 
    document.write('<script src="/path/to/your/jquery.min.js"><\/script>'); 
} 

$(document).ready(function() { 
    $('#yourDropdown').customDropdown(); 
}); 
</script> 
+0

我有一个问题,我包括通过PHP文件,我包括的文件也有一个<脚本src =“...”>可能这就是为什么它有时不会'工作? – user1933224 2013-04-21 00:55:01

+0

如果没有看到源代码,就很难调试。如果你甚至可以从本地开发页面复制页面源代码,这将有所帮助。为什么它只能有效地工作的一个原因是,如果您的网页包含不同的小部件,可能包括jQuery的旧版本。这将覆盖之前包含的任何版本(所以如果您的下拉脚本需要jQuery 1.6,但较旧的小部件包含jquery 1.4,则会破坏它)。再次,很难调试没有看到任何源代码。 – Buck 2013-04-21 04:26:59

相关问题