我目前有fancybox
显示应该显示的所有正确图片/视频。但是,我似乎无法显示每次调用fancybox
时关联的标题。
我正在使用 Fancybox V2.1.5
$(document).ready(function(){
$(".fancyYoutube").live('click',function(){
$.fancybox({
'transitionIn' : 'elastic',
'transitionOut' : 'elastic',
'titleShow' : 'true',
'speedIn' : '100',
'width' : 680,
'height' : 395,
'href' : this.href.replace(new RegExp("watch\\?v=", "i"), 'v/'),
'type' : 'swf',
'swf' : {
'wmode' : 'transparent',
'allowfullscreen' : true,
},
beforeLoad: function() {
this.title = $(this.element).attr('caption');
}
});
return false;
});
});
我在所需的部分中使用caption=
,但它仍然没有显示标题文字:(
我也在使用最新的JQuery插件。
任何帮助都会很棒,谢谢!
编辑:问题已解决:
$(document).ready(function(){
$(".fancyYoutube").live('click',function(){
$.fancybox({
'transitionIn' : 'elastic',
'transitionOut' : 'elastic',
'title' : this.title,
'speedIn' : '100',
'width' : 680,
'height' : 395,
'href' : this.href.replace(new RegExp("watch\\?v=", "i"), 'v/'),
'type' : 'swf',
'swf' : {
'wmode' : 'transparent',
'allowfullscreen' : true
}
});
return false;
});
});
仅需title : this.title,
答案 0 :(得分:0)
如果我记得很清楚(我也在这里查看过:http://fancybox.net/blog)你需要这些参数
'titlePosition' : 'inside',
'titleFormat' : formatTitle
其中formatTitle是附加标题
的函数function formatTitle(title, currentArray, currentIndex, currentOpts) {
return '<div id="tip7-title"><span><a href="javascript:;" onclick="$.fancybox.close();"><img src="/data/closelabel.gif" /></a></span>' + (title && title.length ? '<b>' + title + '</b>' : '' ) + 'Image ' + (currentIndex + 1) + ' of ' + currentArray.length + '</div>';
}
我觉得这里有问题
this.title = $(this.element).attr('caption');
尝试使用类似这样的东西(任何地方都不适合使用适当的ID)
$(this).html( $(this).attr('caption') );