Magnific-popup:如何从<img src="..."/>获取图片网址?

时间:2014-04-09 06:25:10

标签: magnific-popup

是否可以强制放大弹出来获取来自“src&#39; img标签的属性?这样就不需要用标签包装img了。 我尝试了下面的代码,但它没有用。返回的错误未定义&#39;网址。

<script type="text/javascript">
  $(document).ready(function(){
    $('div.gallery').magnificPopup({delegate: 'img'.attr('src') , type: 'image', gallery:{enabled:true}
    });
  });
</script>

无论如何,有没有选择与&#39; img&#39;只有,没有&#39; a&#39;标签? 谢谢!

4 个答案:

答案 0 :(得分:10)

<script type="text/javascript">
  $(document).ready(function(){
    $('div.gallery').magnificPopup({delegate: 'img' , type: 'image', gallery:{enabled:true},

     callbacks: {
          elementParse: function() { this.item.src = this.item.el.attr('src'); }
     }

    });
  });
</script>

elementParse http://dimsemenov.com/plugins/magnific-popup/documentation.html#api

答案 1 :(得分:7)

我实际上没有工作,我找到了怎么做。 现在,单击图片时脚本会增加并创建一个图库。

<script type="text/javascript">
  $(document).ready(function() {
                $('#text').magnificPopup({
                    delegate: 'img',
                    type: 'image',
                    gallery: {
                        enabled: true
                    },
                    callbacks: {
                        elementParse: function(qw) {
                            qw.src = qw.el.attr('src');
                        }
                    }


                });
            });
</script>

答案 2 :(得分:2)

接受的答案对我来说也不起作用。我最终使用了data-mfp-src属性,该属性覆盖了href中的值(如下所述:http://dimsemenov.com/plugins/magnific-popup/documentation.html#content-types)。

我没有手动添加属性(复制图像的src),而是在magnificPopup调用之前复制了所有图像的data-mfp-src属性中的src值。像这样:

var popupImages = $('div.withPopups img');
popupImages.each(function(){
    $(this).attr('data-mfp-src', $(this).attr('src'));
});
popupImages.magnificPopup({type: 'image'});

答案 3 :(得分:1)

使用magnificPopup 1.1.0

现在你必须这样做,如果你想让它发挥作用。

   $(document).ready(function() {
        $('.myClass').magnificPopup({
            type: 'image',
            callbacks: {
                elementParse: function(item) {
                    item.src = item.el.attr('src');
                }
            }
        });
    });