从连接的javascript文件中拆分JQuery
目前,出于性能原因和减少带宽,我在构建时将javascript连接到一个文件(all.js)中,我尝试使用google api中的jQuery.js 执行此操作后,我的所有Ajax功能都停止工作,出现以下错误: “未捕获引用错误:未定义Ajax。” 以前,jquery是“all.js”中的第一个文件 我按以下顺序包括javascript文件:从连接的javascript文件中拆分JQuery,javascript,jquery,ajax,jsp,Javascript,Jquery,Ajax,Jsp,目前,出于性能原因和减少带宽,我在构建时将javascript连接到一个文件(all.js)中,我尝试使用google api中的jQuery.js 执行此操作后,我的所有Ajax功能都停止工作,出现以下错误: “未捕获引用错误:未定义Ajax。” 以前,jquery是“all.js”中的第一个文件 我按以下顺序包括javascript文件: <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.js
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.js"></script>
<script src="/js/all.js"></script>
作为记录,我正在使用jQuery 1.4.2、jqueryUI 1.8.6和mootools 1.4.1,据我所知,当jQuery和所有其他代码都在同一个文件中时,它们都工作得很好。但是现在,您已经将所有其他代码移动到一个文件
all.js
中,并从CDN加载jQuery
但我在您的代码中找不到的任何用途,因此请确保使用以下内容:
$(document).ready(function()
//run your code here
});
据我所知,当您在同一个文件中有jQuery和所有其他代码时,所有这些都工作得很好。但是现在,您已经将所有其他代码移动到一个文件
all.js
中,并从CDN加载jQuery
但我在您的代码中找不到的任何用途,因此请确保使用以下内容:
$(document).ready(function()
//run your code here
});
这些问题是由与mooTools的冲突引起的。将我的AJAX重构为只使用jquery,现在一切都很好。问题是由与mooTools的冲突引起的。将我的AJAX重构为只使用jquery,现在一切都很好。符号“AJAX”本身(没有“$”,没有“jquery”)似乎不是jquery的问题。我估计在jquery之前加载all.js文件可能会遇到种族冲突。Mabey尝试将ajax加载到文档或引用本地jquery库。我将google api复制到/js/并在all.js之前在本地引用它。仍然不走运:(通过firebug检查,它是双向加载的。我假设它们是按顺序加载的。@DominicGreen
all.js
可能首先完成下载,但这并不意味着它在jquery.js
True@MattKlooster之前运行。你有没有一个示例url,我们可以单独查看“Ajax”符号(没有“$”,没有“jquery”)这似乎不是jQuery的问题。我估计在jQuery之前加载all.js文件时可能会遇到种族冲突。可能会尝试将ajax加载到文档或引用本地jQuery库。我将google api复制到/js/并在all.js之前在本地引用它。仍然不走运:(通过firebug检查,它是双向加载的。我假设它们是按顺序加载的。@DominicGreenall.js
可能会先完成下载,但这并不意味着它会在jquery.js
True@MattKlooster之前运行。你有一个示例url我们可以查看吗?你的意思是我应该用$(文档)包围所有的js吗.ready(function(){//all.js contents here.}???不是所有的,把你的应用程序的入口点,你在启动时调用的函数-比如加载第一个数据,我会在午餐后试一试,我会让你知道结果。这让我的代码陷入无限循环:(.我还没有弄清楚原因。另外,我用来构建页面布局的函数也不可用。但是,我的搜索框现在可以工作了…(导致Ajax错误的那个),所以我认为这是正确的。你的意思是我应该用$(document.ready)(function(){//all.js contents here.}包围所有的js吗不是所有的,把你的应用程序的入口点,你在启动时调用的函数,比如加载第一个数据,等我午饭后给它一个机会,我会让你知道结果。这让我的代码陷入无限循环:(.我还没有弄清楚原因。此外,我用于构建页面布局的功能不可用。但是,我的搜索框现在可以工作了…(导致Ajax错误的搜索框),因此我认为这是正确的方法。