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

ありがとうございました。これは私にとって役に立ちました。ただし、例のように機能させることはできませんでした-問題は、スパン要素に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 に答える