私は Foundation4 を CakePhp2.4 と連携して使用していますが、これまで問題はありませんでした。私が何をしても、ページの読み込みが完了すると、joyRide の postRide コールバックが呼び出されます (Joyride が完了したときに再度呼び出されることはありません)。
また、私の目標はJoyride が終了するとすぐに (カスタム関数) を起動することなので、別の方法として、イベント リスナーをクラスにバインドし、さらには Joyride ペイン内のカスタム要素 IDinitialize()
をバインドしようとしましたが、これらもすべて呼び出されています。ページの読み込み時。.joyride-close-tip
これについて非常に多くの異なるバリエーションを試したので、試したすべてを適切に投稿することはできませんが、現在のコードは次のとおりです。
注:
1) これはすべて CakePhp2.4 によって制御されているため、noConflict モードで jQuery を使用しています。したがって、jquery の通常の $ の代わりに $j プレフィックス
を使用しています。2) このアプリでは zepto を使用できません (ただし、理由はわかりませんが、読み込んでも何も動作しません)。
私のHTML:
<ol class="joyride-list" data-joyride>
<li data-id="module-name">
<h4>Welcome!</h4>
<p>You're about to start the module. But first, we'll make sure you understand the interface.</p>
</li>
<!--- several more <li> pairs ---->
<li data-button="begin">
<h4>All Set?</h4>
<p>Click "Begin" to get started on this module!</p>
</li>
</ol>
私のJS:
<script type="text/javascript" src="appname/js/vendor/jquery.js"></script>
<script type="text/javascript" src="appname/js/foundation.min.js"></script>
<script type="text/javascript" src="appname/js/app.js"></script> <!-- custom js functions that reply on jquery and have no collisions with Foundation -->
<script>
$j(document).foundation('joyride',
'start',
{ postRideCallback: initialize() }
);
// have also tried:
// $j(document).foundation().foundation('joyride','start',{postRideCallback: initialize()});
</script>