Fancybox: добавить заголовок и другие вещи
Я хотел бы знать, как я могу добавить больше, чем заголовок (e.G заголовок или ссылка) на fancybox. Я знаю, что если я добавлю название="Bla", оно появится в поле. Но если я добавлю что-то вроде caption="Blabla" в мою ссылку на изображение, какой код мне нужно иметь в jquery.fancybox.js, чтобы вытащить этот тег подписи?
2 ответов
вам не нужно возиться с оригинала С помощью jQuery.fancybox.js файл, так как вы можете добавить эту опцию в свой собственный настроенный скрипт fancybox.
если вы используете HTML5 DOCTYPE
можно использовать data-*
атрибут для вас заголовок, чтобы вы могли иметь этот HTML:
<a class="fancybox" href="images/01.jpg" data-caption="This is the caption" >Open fancybox</a>
затем установите пользовательский скрипт fancybox и получите data-caption
С помощью beforeShow
обратного вызова, как
$(document).ready(function() {
$('.fancybox').fancybox({
beforeShow : function(){
this.title = $(this.element).data("caption");
}
});
}); // ready
это переопределит title
и с помощью data-caption
вместо.
С другой стороны, вы можете захотеть сохранить title
атрибут и построить fancybox в title
сочетания обоих, title
и data-caption
атрибуты Итак, для этого HTML
<a class="fancybox" href="images/01.jpg" title="This is the title" data-caption="This is the caption">Open fancybox</a>
использовать этот скрипт
$(document).ready(function() {
$('.fancybox').fancybox({
beforeShow : function(){
this.title = this.title + " - " + $(this.element).data("caption");
}
});
}); // ready
кроме того, вы также можете получить caption/title
из другого элемента HTML в вашем документе (a <div>
например), которые могут иметь ссылки или другие элементы HTML. Проверьте эти сообщения для примеров кода: https://stackoverflow.com/a/9611664/1055987 и https://stackoverflow.com/a/8425900/1055987
Примечание: это для fancybox v2.0.6+
старый вопрос, но благодаря ответу JFK я узнал, что с последней версией fancybox
вы можете добавить заголовок, просто введя значение в (по умолчанию). Просто убедитесь, что он включен в <a>
с элементом fancybox
класса.