JSF2.0とEclipseIndigoを使用していますが、最近、PrimeFacesライブラリをビルドパスに追加しました。この前は、jquery1.7.2+カラーボックスを使用して「ライトボックス」を機能させていました。私は次のものを持っていました:
<h:outputStylesheet library="css" name="style.css" type="text/css"/>
<h:outputStylesheet library="css" name="colorbox.css" type="text/css"/>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<h:outputScript library="js" name="jquery.colorbox.js" target="head"/>
リソースはにありWebContent/resources/js
ます。
PrimeFacesを追加した後、colorbox
関数が見つからなかったため、「ライトボックス」が機能しなくなりました。JSF2が生成しているソースを調べた後、ライブラリが独自のバージョンのjQueryを自分の上に挿入したjquery.colorbox.js
ため、カラーボックスライブラリがjQueryライブラリを使用できないことに気付きました。さらに、jquery.colorbox.jsインクルードがありませんでした。
PrimeFaces JavaScriptライブラリをページ上の別の場所に再配置するにはどうすればよいですか?jquery.colorbox.js
以前のようにロードされないのはなぜですか?
私の実際のページは役に立つかもしれません。ここにあります。
ChromeのJavaScriptコンソールからも同じエラーが発生します。ページが読み込まれると、次のように表示されます。
Uncaught ReferenceError: jQuery is not defined
そして、カラーボックスのリンクをクリックすると、次のようになります。
Uncaught TypeError: Object [object Object] has no method 'colorbox'
(anonymous function):8080/g5.ambience/:24
b.event.dispatchjquery.js.html:16
b.event.add.bD.handle.bB
ダニエルズの提案があっても、ここに作成されたソースがあります:http: //pastie.org/3851179