这是我的网站 如果我有时在Chrome中打开它,我就不会在悬停时看到菜单功能。 在控制台中我得到了这个
Uncaught ReferenceError: jQuery is not defined /catalog/view/javascript/journal/pnotify/jquery.pnotify.min.js:1
Uncaught ReferenceError: jQuery is not defined /catalog/view/javascript/journal/cookie.js:1
Uncaught ReferenceError: jQuery is not defined /catalog/view/javascript/jquery/colorbox/jquery.colorbox.js:82
Uncaught ReferenceError: $ is not defined /catalog/view/javascript/jquery/tabs.js:1
Uncaught TypeError: undefined is not a function
我知道这是一个古老的错误,我在SO上看过几个问题, 但他们都没有帮助我
如果你在Firefox中打开同一个网站,它会警告你一些无响应的JavaScript,一旦你点击确定它工作正常,我不确定这背后的问题是什么,如果是jQuery问题,它会是很难进入每个文件并进行调试, 有谁可以通过查看控制台日志来帮助我?
答案 0 :(得分:4)
您已将async属性设置为jQuery包括script,例如<script async src="catalog/view/javascript/jquery/jquery-1.7.1.min.js"></script>
将其删除。
<script src="catalog/view/javascript/jquery/jquery-1.7.1.min.js"></script>
在正常情况下,脚本按照包含它们的顺序执行。但是由于您使用了async
标志,核心jQuery库的执行将是异步的。因此有可能在需要jQuery库的其余脚本文件之后执行它。
答案 1 :(得分:2)
不使用async
<script src="catalog/view/javascript/jquery/jquery-1.7.1.min.js"></script>
到你的javascript包含文件的顶部
并确保jquery和其他库之间没有冲突
答案 2 :(得分:0)
嗨我也有同样的问题。我也按照自己的方式解决了这个问题。你只要看看我的代码。如果它在你的项目上做同样的事情就更正了。
function fill_grid()
{
//some of my work
var para=new Array();
para[0]="id";
para[1]=retcond("");
}
function retcond(posid)
{
//
var cond="where pfid="'19282'";
retcond=cond;
return retcond;
}
上面的代码在第一个button_click上工作正常。但是第二次点击给了我同样的错误。现在我改变了&#34; retcond()&#34;功能进入,
function retcond(posid)
{
//
return cond;
}
由于我没有声明变量名称,这让我感到困扰。现在它解决了。希望这可以给你任何想法。