この Magento ストアは Twitter の Bootstrap で開発されており、Bootstrap Modal の代わりにjbutz のBootstrap Lightboxを実装しようとしています。
Bootstrap Lightbox js を Bootstrap の残りの js と一緒に次のように呼び出しました。
<script src="<?php echo $this->getSkinUrl('js/jquery.js'); ?>"></script>
<script src="<?php echo $this->getSkinUrl('js/google-code-prettify/prettify.js'); ?>"></script>
<script src="<?php echo $this->getSkinUrl('js/bootstrap-transition.js'); ?>"></script>
<script src="<?php echo $this->getSkinUrl('js/bootstrap-alert.js'); ?>"></script>
<script src="<?php echo $this->getSkinUrl('js/bootstrap-modal.js'); ?>"></script>
<script src="<?php echo $this->getSkinUrl('js/bootstrap-lightbox.js'); ?>"></script>
<script src="<?php echo $this->getSkinUrl('js/bootstrap-dropdown.js'); ?>"></script>
<script src="<?php echo $this->getSkinUrl('js/bootstrap-scrollspy.js'); ?>"></script>
<script src="<?php echo $this->getSkinUrl('js/bootstrap-tab.js'); ?>"></script>
<script src="<?php echo $this->getSkinUrl('js/bootstrap-tooltip.js'); ?>"></script>
<script src="<?php echo $this->getSkinUrl('js/bootstrap-popover.js'); ?>"></script>
<script src="<?php echo $this->getSkinUrl('js/bootstrap-button.js'); ?>"></script>
<script src="<?php echo $this->getSkinUrl('js/bootstrap-collapse.js'); ?>"></script>
<script src="<?php echo $this->getSkinUrl('js/bootstrap-carousel.js'); ?>"></script>
<script src="<?php echo $this->getSkinUrl('js/bootstrap-typeahead.js'); ?>"></script>
<script src="<?php echo $this->getSkinUrl('js/application.js'); ?>"></script>
次のように、他の Bootstrap CSS とともに Bootstrap Lightbox CSS を呼び出しました。
<action method="addCss"><stylesheet>css/bootstrap.css</stylesheet></action>
<action method="addCss"><stylesheet>css/bootstrap-responsive.css</stylesheet></action>
<action method="addCss"><stylesheet>css/bootstrap-lightbox.css</stylesheet></action>
すべてのファイルはページの読み込み時に呼び出され、アクセス可能です。
template/catalog/product/view/media.phtmlでは、次のマークアップを使用しています:-
<a data-toggle="lightbox" href="#myGallery_<?php echo $_product->getId()?>" class="main-image">
<?php echo $_helper->productAttribute($_product, $_img, 'image'); ?>
</a>
<div class="lightbox hide fade" id="myGallery_<?php echo $_product->getId()?>" tabindex="-1" role="dialog" aria-hidden="true">
<div class="lightbox-header">
<a class="close" data-dismiss="lightbox">×</a>
<h3><?php echo $_product->getName()?></h3>
</div>
<div class="lightbox-content">
<img src="<?php echo $this->helper('catalog/image')->init($_product, 'image')->resize(600)?>" alt="<?php echo $this->htmlEscape($this->getImageLabel())?>" title="<?php echo $this->htmlEscape($this->getImageLabel())?>" />
</div>
<div class="lightbox-footer">
<a href="#" class="btn" data-dismiss="lightbox">Close</a>
</div>
</div>
私は一生できませんが、製品画像がクリックされたときにライトボックスをトリガーすることはできません。何も起こりません。デモから Magento テンプレート ファイルに正確なマークアップを実装しても、まだ機能しません。まるで js が正しく呼び出されているか、トリガーされているかのようです。これがjsfiddleで機能しない例を見ることができます。
誰でも問題を指摘できますか?