jquery - Fancybox 规则冲突

标签 jquery fancybox fancybox-2

此规则使用字幕的 alt 属性:

$(".fancybox").fancybox({
beforeShow : function() {
    var alt = this.element.find('img').attr('alt');

    this.inner.find('img').attr('alt', alt);

    this.title = alt;
}
});

此规则包含图像宽度内的标题:

$(".fancybox").fancybox({
helpers : {
    title: {
        type: 'inside'
    }
}
});

有什么办法可以让这两个规则同时起作用吗?

Fancybox 自动使用标题为图像生成说明文字。当预期标题的文本很长时,这会导致工具提示变得难看。我想使用 alt 作为标题,这样我就可以将标题留空,并完全消除工具提示。提前致谢。

最佳答案

您可以在同一个 fancybox 初始化脚本中添加任意数量的 API 选项(称为规则),并用逗号将它们彼此分隔,例如

jQuery(document).ready(function ($) {
    $(".fancybox").fancybox({
        // all your API options here
        beforeShow: function () {
            var alt = this.element.find('img').attr('alt');
            this.inner.find('img').attr('alt', alt);
            this.title = alt;
        },
        helpers: {
            title: {
                type: 'inside'
            }
        }
    });
}); // ready

参见JSFIDDLE

关于jquery - Fancybox 规则冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31252325/

相关文章:

javascript - 通过 escape_javascript 在 JavaScript 中转义斜线

jquery - 使用 Jquery 的类名将焦点设置为链接

jquery - fancybox 加载正常......然后当页面完成加载时它被抛出并改变位置

jquery - div 大小的 Fancybox

javascript - 当另一个 fancybox 实例已打开时,防止打开第二个 fancybox

jquery - fancybox 2.1.4 中 'hideOnOverlayClick' 和 'enableEscapeButton' 的替代属性

javascript - 设置 Fancybox 图像尺寸

javascript - Cordova SQLite 插件仅在第一次调用时有效

javascript - 将 x 偏移到图像

javascript - Fancybox jquery多个弹出框