【问题标题】:slideshow title not showing when clicking through slideshow?单击幻灯片时不显示幻灯片标题?
【发布时间】:2014-04-08 12:56:24
【问题描述】:

在此处查看我的演示页面:http://intelligen.info/pro%20templates/template%20grid%20center/

我正在使用 Nivo Lightbox 插件。我也在使用超现实的 CMS。从我在这里发布的上一个问题 (Add the alt attribute to light box slideshow title?) 我得到下面的代码,使幻灯片的标题链接到图像标签的 alt 属性,而不是围绕它的锚的标题属性?

var altText;
$(document).ready(function () {
$('#nivo-lightbox-demo a').nivoLightbox({
    effect: 'fade',
    beforeShowLightbox: function () {
        altText = $($(this)[0].el).find('img').prop('alt');
    },
    afterShowLightbox: function (light) {
        if (altText!=="") $($(light)[0]).find('.nivo-lightbox-title').html(altText);
    }
 });
});

这在单击单个缩略图时非常有效,然后会显示标题,但是如果单击幻灯片,则不再显示标题。如何在单击幻灯片时让幻灯片显示标题?

在这里摆弄:http://jsfiddle.net/rabelais/MH8mu/2/

【问题讨论】:

  • 我相信我可以帮忙,你能设置一个 jsFiddle 吗?
  • 谢谢,深入研究代码...
  • 文档说,如果你想显示一个标题,你只需要把你想要的文本放在包含你的图像的 a 标签的 title 属性中..这不是你想要的吗想达到吗?
  • 是的,但是如果您查看我问的上一个问题,我需要图像的 alt 属性作为锚的标题属性的原因是由于使用了超现实的 CMS。所以我不能把标题放在a的title属性中。我需要它位于图像的 alt 属性中,以便用户可以通过 CMS 对其进行编辑。

标签: jquery slideshow title alt


【解决方案1】:

该插件的设计不正确,但我设法使事情正常运行,而无需修改灯箱代码。

$(document).ready(function () {
    var navHandler = function(element){
        if(element[0])
            element = element[0][0];
        var title = $(element).children().attr('alt');
        $(element).attr('title', title);   
        $('.nivo-lightbox-overlay .nivo-lightbox-title').html(title);
    };
    $('#nivo-lightbox-demo a').nivoLightbox({
        effect: 'fade',
        beforeShowLightbox: function(){navHandler(this.el);},
        onPrev: navHandler,
        onNext: navHandler
    });
});

小提琴更新HERE

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-18
    • 1970-01-01
    • 2021-03-03
    相关资源
    最近更新 更多