我在“Magnific Popup”中发现了两个非常棒的jquery插件和一个特殊的stapel功能“自动分组的自适应缩略图桩效果”,我想两者一起,我可以通过调整灯箱大小来制作一个非常酷(响应)的投资组合。
但不幸的是,他们并没有按照我的预期一起工作,因为你可以看到here。
当您点击顶部图片并打开其中一个出现的图片时, 它将显示在灯箱中,但没有图像下方的关闭按钮和标题。 所以你必须回到“浏览器后退按钮”(不好)。
当你点击底部的一个小图片“没有stapel功能”时,图片会打开,关闭按钮和标题来自“magnific popup”。所以这里大胆的弹出工作正常。 现在,我没有找到为什么magnific-popup关闭按钮/标题不会出现在顶部的stapel功能图片。
由于我不是JS专业版,我只能猜测两个js-scripts之间可能存在冲突,因此我尝试添加“jQuery.noConflict();”但这只是猜测,并没有解决问题。
我希望,有人有个主意。
这是HTML标题中的JS内容:
<!-- Magnific Popup core CSS file -->
<link rel="stylesheet" href="css/magnific-popup.css">
<!-- jQuery 1.7.2+ or Zepto.js 1.0+ -->
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<!-- Modernizr -->
<script src="js/modernizr.custom.63321.js"></script>
<!-- Magnific Popup core JS file -->
<script src="js/jquery.magnific-popup.js"></script>
<!-- external Stapel JS file -->
<script type="text/javascript" src="js/jquery.stapel.js"></script>
<!-- internal Stapel JS -->
<script type="text/javascript">
jQuery.noConflict();
$(function() {
var $grid = $( '#tp-grid' ),
$name = $( '#name' ),
$close = $( '#close' ),
$loader = $( '<div class="loader"><i></i><i></i><i></i><i></i><i></i><i></i><span>Loading...</span></div>' ).insertBefore( $grid ),
stapel = $grid.stapel( {
onLoad : function() {
$loader.remove();
},
onBeforeOpen : function( pileName ) {
$name.html( pileName );
},
onAfterOpen : function( pileName ) {
$close.show();
}
} );
$close.on( 'click', function() {
$close.hide();
$name.empty();
stapel.closePile();
} );
} );
</script>
在关闭body-Tag之前,这是JS for magnific-popup:
<script type="text/javascript">
$(document).ready(function() {
$('.popup').magnificPopup({
type: 'image',
closeOnContentClick: true,
image: {
verticalFit: false
}
});
});
</script>
在链接中通过class =“popup”调用magnific-popup(在这里工作正常):
<a class="popup" href="http://farm9.staticflickr.com/8379/8588290361_ecf8c27021_b.jpg" title="This image fits only horizontally.">
<img src="http://farm9.staticflickr.com/8379/8588290361_ecf8c27021_s.jpg" height="75" width="75">
</a>
<a class="popup" href="http://www.marvin-online.de/test/images/print/large/logo-safework-1.jpg" title="Der Titel"> <img src="http://www.marvin-online.de/test/images/print/large/logo-safework-1.jpg" height="75" width="75"></a>
..并且这些图片不起作用:
<ul id="tp-grid" class="tp-grid">
<li data-pile="Logo">
<a class="popup" href="http://www.marvin-online.de/test/images/print/large/visitenkartendesign-erbengemeinschaft.jpg">
<span class="tp-info"><span>Logo 1</span></span>
<img src="http://www.marvin-online.de/test/images/print/thumbs/visitenkartendesign-erbengemeinschaft.jpg" />
</a>
</li>
<li data-pile="Logo">
<a class="popup" href="http://www.marvin-online.de/test/images/print/large/logo-safework-1.jpg">
<span class="tp-info"><span>Logo 2</span></span>
<img src="http://www.marvin-online.de/test/images/print/thumbs/logo-safework-1.jpg" />
</a>
</li>
</ul>
答案 0 :(得分:0)
好的,我找到了一个解决方案:只需在Stapel的“onAfterOpen”回调函数中添加magnific插件的代码即可。 (很多人都是安德鲁 - 大卫!)