我在joomla 3.2.2安装中使用亚马逊脚本中的jquery自动完成。 jQuery调用是由joomla和jquery easy插件生成的,它配置为添加jquery 1.10.2和jquery ui 1.10.3并删除任何其他实例(它似乎忽略了joomla添加的版本)。
脚本出现如下:
<link rel="stylesheet" href="https://ajax.googleapis.com/ajax/libs/jqueryui/1.10.3/themes/smoothness/jquery-ui.css" type="text/css" />
<link rel="stylesheet" href="/foobar/media/sourcecoast/css/sc_bootstrap.css" type="text/css" />
<link rel="stylesheet" href="/foobar/cache/widgetkit/widgetkit-4d6b5675.css" type="text/css" />
<link rel="stylesheet" href="/foobar/media/sourcecoast/css/mod_sclogin.css" type="text/css" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js" type="text/javascript"></script>
<script src="https://ajax.aspnetcdn.com/ajax/jquery.migrate/jquery-migrate-1.2.1.min.js" type="text/javascript"></script>
<script src="/foobar/plugins/system/jqueryeasy/jquerynoconflict.js" type="text/javascript"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.10.3/jquery-ui.min.js" type="text/javascript"></script>
<script src="/foobar/media/system/js/tabs-state.js" type="text/javascript"></script>
<script src="/foobar/media/jui/js/jquery.min.js" type="text/javascript"></script>
<script src="/foobar/media/jui/js/jquery-noconflict.js" type="text/javascript"></script>
<script src="/foobar/media/jui/js/jquery-migrate.min.js" type="text/javascript"></script>
<script src="/foobar/media/jui/js/bootstrap.min.js" type="text/javascript"></script>
失败的js是:
jQuery(function () {
jQuery("#jform_itemtitle").autocomplete({
minLength: 3,
source: function (req, res) {
jQuery.ajax({
url: 'http://completion.amazon.com/search/complete',
cache: true,
dataType: 'jsonp',
data: {
'search-alias': 'aps',
'client': 'amazon-search-ui',
'mkt': '1',
'q': req.term
},
error: function (data) {
return false;
},
success: function (data) {
res(data[1]);
}
});
}
});
});
错误是:
未捕获TypeError:对象[object Object]在控制台中没有方法'autocomplete',并且自动完成脚本不起作用。
答案 0 :(得分:2)
将下面放在最顶层。
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js" type="text/javascript"></script>
并删除以下内容。两个版本/包含可能是危险的:
<script src="/foobar/media/jui/js/jquery.min.js" type="text/javascript"></script>
事实上只保留1个版本。我看到很多js文件都是重复的。