7

我想从锚标签内的隐藏标题字段中获取我的 Magnific 图像的标题 - 而不是从标题中获取。这是因为我的标题包含标记。

HTML

<a href="img/zoom.jpg">
  <img src="img/small.jpg" alt=""> 
  <span class="hide">This is a caption with <a href="#">a link</a> in it</span>
</a>

JS

// initialise the magnific lightbox
    $('.js-lightbox').each(function() {
      $(this).magnificPopup({
        delegate: 'a',
        type: 'image',
        tLoading: 'Loading image #%curr%...',
        gallery: {
          enabled: true,
          navigateByImgClick: true,
          preload: [0,1] // Will preload 0 - before current, and 1 after the current image
        },
        image: {
          titleSrc: function(item) {
            return item.el.text;
          },
          tError: '<a href="%url%">The image #%curr%</a> could not be loaded.'
        }
      });
    });

所以显然return item.el.text;没有按预期工作。谢谢。

4

2 回答 2

8
return item.el.find('span').text();
于 2013-10-16T15:08:04.567 回答
-3

谢谢你。事实证明这对我很有用。我无法让它像示例一样工作 - 问题在于在 span 元素中放置一个 href 。这会导致嵌套a标签,这在 HTML 中是非法的。下面这个 W3C 文档与 HTML 4 相关,但我相信这同样适用于 HTML 5。

http://www.w3.org/TR/html401/struct/links.html#h-12.2.2

于 2014-04-08T23:32:34.757 回答