本当に奇妙な問題があります。アプリケーションで Spring Framework 3.0.5 を使用しています。ビューのレンダリングには、Tiles Framework を使用します。
これは、レイアウト jspx ファイルのソースです。
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:jsp="http://java.sun.com/JSP/Page" xmlns:c="http://java.sun.com/jsp/jstl/core" xmlns:tiles="http://tiles.apache.org/tags-tiles" xmlns:spring="http://www.springframework.org/tags" xmlns:util="urn:jsptagdir:/WEB-INF/tags/util" >
<jsp:output doctype-root-element="html" doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN" doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"/>
<jsp:output omit-xml-declaration="yes"/>
<head>
</head>
<body>
<script type="text/javascript" src="${pageContext.request.contextPath}/resources/js/jquery.js"></script>
<img id="testimg" src="${pageContext.request.contextPath}/resources/images/logo.png" onclick="$(this).fadeOut()" />
</body>
ここでの問題: ページをロードするたびに、jQuery 呼び出しから JavaScript エラーが発生し、それ以上の js コードは実行されません。
Error: c.removeAttribute is not a function
しかし、ページのソースをコピーしてローカル ファイルに貼り付け、ブラウザで開くと、すべて問題ありません (違いは、Tomcat がページを配信しないことです)。
レンダリングされたページは次のようになります。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head />
<body>
<script src="/myContext/resources/js/jquery.js"
type="text/javascript">
</script>
<img onclick="$(this).fadeOut()"
src="/myContext/resources/images/logo.png" id="testimg" />
</body>
</html>
画像が正しく表示され、query.js も読み込まれます。私は本当にアイデアが不足しています。誰かが私を助けてくれることを願っています!!
前もって感謝します!
更新: この効果は、Safari と FF でのみ発生します。Google Chromeで動作します!! 言い忘れましたが、私は Mac で作業しています...