仅为图库项目添加水印到fancybox,而不为非图库项目添加水印

时间:2013-09-19 12:58:49

标签: javascript jquery html css fancybox-2

我有一个页面,其中包含一个FancyBox图库和一些像div这样的FancyBox元素。 我需要在我的图库项目上添加水印,所以我使用了FancyBox页面中的示例http://jsfiddle.net/w5gQS/

beforeShow: function () { $('<div class="watermark"></div>').prependTo( $.fancybox.inner );

但是,将水印div添加到所有FancyBox元素中,包括单个元素。

我的问题: 是否可以仅在图库项目中添加水印,如果是这样的话(方法越干净越好)?

P.S。使用FancyBox v2.1.5

最好的问候

1 个答案:

答案 0 :(得分:0)

您可以轻松评估group中有多少元素,因此如果有多个元素,那么 gallery ,否则就是单个元素。

使用参考jsfiddle上的代码,以这种方式进行调整:

$(".fancybox").fancybox({
    beforeShow: function () {
        /* Add watermark to gallery elements only */
        if ( this.group.length > 1 ) {
            $('<div class="watermark"></div>')
                .bind("contextmenu", function (e) {
                return false; /* Disables right click */
            }).prependTo($.fancybox.inner);
        }
    }
});

请参阅分叉 JSFIDDLE