Fancybox 3 изменить заголовок ссылки на заголовок данных

#javascript #jquery #fancybox-3

#javascript #jquery #fancybox-3

Вопрос:

Я хотел бы спросить вас, есть ли какой-либо метод javascript для захвата заголовка ссылки и использования его или изменения его на заголовок данных в fancybox 3? Единственное условие — если заголовок ссылки существует.

Это то, что у меня есть сейчас:

 <a data-fancybox="gallery" title="some-title" href="big_1.jpg">
<img src="small_1.jpg">
</a>
 

и я хотел бы как-то изменить его на это:

 <a data-fancybox="gallery" data-caption="some-title" href="big_1.jpg">
<img src="small_1.jpg">
</a>
 

Спасибо за всю помощь.

Комментарии:

1. api.jquery.com/attr . Обратите внимание, что вам нужно будет выполнить логику для установки data-caption атрибута перед созданием экземпляра fancybox

Ответ №1:

используйте некоторый JS-код для выполнения

 jQuery(function(){
$('a[data-fancybox="gallery"]').each(function(){
 if($(this).attr('title') != '' ){
  $(this).attr('data-caption', $(this).attr('title'));
 }
})
}); 
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<a data-fancybox="gallery" title="some-title" href="big_1.jpg">
<img src="small_1.jpg">
</a>
<a data-fancybox="gallery" title="title" href="big_1.jpg">
<img src="small_1.jpg">
</a>
<a data-fancybox="gallery"  href="big_1.jpg">
<img src="small_1.jpg">
</a>