次のようなコールバックを使用して、コンテナに新しいhtmlを追加してみることができます。.fancybox-wrap
afterShow
afterShow : function(){
var myContent = '<div id="myContent">{my html content here}</div>';
$(".fancybox-wrap").append(myContent);
}
CSS
ボックス内に新しいコンテンツを(絶対に)配置するために使用します
それを削除することも良い考えafterClose
です。そうしないと、次に fancybox を開いたときに再度追加されます。
afterClose: function(){
$(".fancybox-wrap #myContent").remove();
}
一方、fancybox を起動したセレクターから他の属性を取得するには、次の$(this.element)
ようなコールバック関数内で使用します。
beforeShow: function(){
var thisAlt = $(this.element).attr("alt");
var thisRel = $(this.element).attr("rel");
}
data-*
次のような HTML5 属性を使用することもできます
<a class="fancybox" data-width="500" data-height="320" ....
のような値を取得します
var thisWidth = $(this.element).data("width");
var thisHeight = $(this.element).data("height");
または、次のような値を使用して、新しいサイズを fancybox に直接割り当てます
afterShow: function(){
this.width = $(this.element).data("width");
this.height = $(this.element).data("height");
}
注: この情報はすべて fancybox v2.x に適用されます。それだけ。