我有和手风琴在一个普通的html页面上工作,但当我尝试将它添加到Spring MVC页面时,我收到错误:$(...).accordion is not a function
。
以下是我的WEB-INF\views\index.jsp
文件的标题:
<!DOCTYPE html>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<head>
<title>Jeeni Software Ltd</title>
<link rel="shortcut icon" href="favicon.ico" type="image/x-icon" />
<link rel="stylesheet" href="<c:url value="css/style.css"/>" type="text/css">
<link rel="stylesheet" href="<c:url value="css/menu/menu_style.css"/>" type="text/css"/>
<script type="text/javascript" src="<c:url value="js/jquery-1.8.3.js"/>"></script>
<script type="text/javascript" src="<c:url value="js/jquery-ui-1.9.2.js">"></script>
<script type="text/javascript" src="<c:url value="js/jquery.flip.js"/>"></script>
...
<!-- This is the 'accordion' div -->
<div id="accordion" style="height:800px;">
<h3>Title...</h3>
...
以下是就绪功能:
$(document).ready(function() {
var object = $("#accordion");
alert("object: " + object.accordion);
$("#accordion").accordion({ collapsible: true, active: 'false', autoHeight: false });
$("#banner").fadeIn(1000);
alert("Done");
});
这个alert("object: " + object.accordion);
显示object: undefined
并在下一行炸弹。
这是我的servlet-context.xml
文件
<mvc:resources mapping="/cv/**" location="/cv/" />
<mvc:resources mapping="/wow/**" location="/wow/" />
<mvc:resources mapping="/css/**" location="/css/" />
<mvc:resources mapping="/imgs/**" location="/imgs/" />
<mvc:resources mapping="/js/**" location="/js/" />
<mvc:resources mapping="/inc/**" location="/inc/" />
<mvc:resources mapping="/article-imgs/**" location="/article-imgs/" />
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>
<property name="prefix" value="/WEB-INF/views/"/>
<property name="suffix" value=".jsp"/>
</bean>
Firebug显示加载任何jquery文件没有问题。我可以在Spring mvc之外重新创建正确的行为,所以问题必须与Spring / Java有关吗?!?但我找不到什么。 Firebug报告的唯一错误是$(...).accordion is not a function
,但所有设置都与jquery ui手风琴示例一样。
答案 0 :(得分:0)
<script type="text/javascript" src="<c:url value="js/jquery-ui-1.9.2.js">"></script>
在某些方面不正确。
也可能更好地使用cdn托管版本的jQuery lib文件。以下是最新版本,适用于手风琴。
<script src='http://ajax.googleapis.com/ajax/libs/jqueryui/1/jquery-ui.min.js' type='text/javascript'></script>
答案 1 :(得分:0)
问题是我通过以下方式导入了一些内容:
<jsp:include page="../includes/index_page_intro_txt.jsp" />
这个JSP文件正在重新导入jquery。拿出来,一切都很好。
特别感谢@NimChimpsky成为一名声音板并让我继续前进。
任何人都无法通过上述信息解决这个问题。所以,让大家知道我是如何解决它的:
我首先删除了除库导入,ready语句和accordion div块之外的文件中的所有内容。然后它奏效了。因此,我慢慢地将所有内容添加回来,直到它停止工作,然后调查原因。
首先应该这样做 - 呃!