Я пытаюсь заставить Magnific Popup отображать заголовок на основе других элементов вокруг цели, которую он использует. Учитывая следующую разметку, я хочу, чтобы заголовок был «Foobar».
<div class="container">
<article>
<h2>Foo</h2>
<figure>
<a href="img/img-1.jpg">
<img src="img/img-1.jpg" />
</a>
<figcaption>
bar1
</figcaption>
</figure>
</article>
<article>
<h2>Foo</h2>
<figure>
<a href="img/img-2.jpg">
<img src="img/img-2.jpg" />
</a>
<figcaption>
bar2
</figcaption>
</figure>
</article>
</div>
Что я пробовал, ища решения в Интернете (включая это на StackOverflow ) следующий код:
$('.container').magnificPopup({
delegate: 'article figure a',
type: 'image',
titleSrc: function(item) {
return item.el.parent('article').find('h2').text() + item.el.parent('article').find('figcaption').text();
},
gallery:{enabled:true}
});
Выяснение функции могло быть проблемой. Я даже пытался просто вернуть постоянную строку, но это, похоже, ничего не дало:
titleSrc: function(item) {
return "fake Foobar";
}
Кто-нибудь знает, что я делаю неправильно?
ПРИМЕЧАНИЕ. Это работает, если я использую titleSrc: 'title', но это не то поведение, которое мне нужно, так как мне приходится дублировать содержимое в разметке.
image: { titleSrc: ... }
. - person jazZRo   schedule 22.01.2014