1.3.2 ライブラリを使用するサイトに jQuery Booklet プラグインを配置しようとしています - この参照またはアップグレードを削除できません。過去に、このサイトで新しいバージョンの jQuery を必要とする他のプラグインで noConflict を使用して成功しました。
ローカルでテストして 1.3.2 リファレンスを含めると、Firebug コンソールに次のように表示されます。
ただし、ブックは正しく読み込まれ、機能します。そのエラーが何を意味するのかわかりません。コードを開発サイトに配置すると、本の画像が積み重なって表示され、ナビゲーション ボタンが表示されず、Firebug コンソールに次のようなエラーが表示されます。
TypeError: p2.offset(...) は定義されていません [このエラーで中断]
p2.offset().left + pWidth - hoverFullWidth,
IE では次のように表示されます: SCRIPT5007: Unable to get property 'left' of undefined or null reference jquery.booklet.latest.js, line 1205 character 2
これは問題のコードで、jquery.booklet.latest.js の一部です
p3.draggable({
axis: "x",
containment: [
target.offset().left,
0,
p2.offset().left + pWidth - hoverFullWidth,
pHeight
],
何かが正しく読み込まれていません。私の開発環境のページでは、スクリプトは次のようになります。
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js" type="text/javascript"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.10.1/jquery-ui.min.js" type="text/javascript"></script>
<script src="/wcsstore/CVWEB/images/home/js/jquery.easing.1.3.js" type="text/javascript"></script>
<script src="/wcsstore/CVWEB/images/home/js/jquery.booklet.latest.js" type="text/javascript"></script>
<link href="/opencms/opencms/CVWEB/css/jquery.booklet.latest.css" type="text/css" rel="stylesheet" media="screen, projection, tv" />
<script type="text/javascript">
var $j = jQuery.noConflict(true);
$j(document).ready(function(){
$j(function () {
$j("#mybook").booklet();
});
});
</script>
他にも非常に多くのスクリプトがあるため、noConflict で何か追加する必要がありますか? jquery.booklet.latest.js ファイルを変更して noConflict を含める必要がありますか? 上記のように変数を宣言して $ を置き換えてみましたが、何もしませんでした。
イージングエラーを解決するためにこことここを見ましたが、すでにすべての正しいスクリプトを含めています。
ここで、 $ の代わりに jQuery を使用するという解決策を試しましたが、うまくいきませんでした。
jQueryに関しては、私はまだかなり未熟なので、助けていただければ幸いです。ありがとうございました。
別のオプションに移ろうとしていますが、問題が何であるかを知るためにここに投稿したかったのです。