从链接打开现有的jQuery灯箱库

时间:2015-09-09 14:48:47

标签: javascript jquery html colorbox

我有一个现有的jQuery颜色框库,当我点击文档准备好的初始化的4个图像中的任何一个时,它可以正常工作:

$(document).ready(function () {
    if ($('.gallery-thumbnail').length > 0) {
        $('.gallery-thumbnail').colorbox({ rel: 'gallery-thumbnail', transition: 'fade' });
    }
});

我在页面中也有一个链接,我想打开同一个图库。我认为我会很可爱,并尝试复制用户点击其中一个图片$('.gallery-image').first().find('a').click();,该图片效果很好,当我在Chrome Inline Console中输入图片库并点击Enter时,会打开图片库,但是当它从代码运行时,它只是用橙色加载GIF打开画廊打开,它无休止地旋转。之后,我尝试在HTML锚点上直接使用onclick处理程序,其代码为$('.gallery-thumbnail').colorbox({rel: 'gallery-thumb', transition: 'fade' });,导致与之前相同的无限加载GIF。为了确保我不会发疯,我将OnClick事件处理程序挂钩到运行此代码的函数:

function showColorbox() {
    $('.gallery-thumbnail').each(function () {
        $(this).addClass('test');
    });
    $('.test').colorbox({rel: 'gallery-thumb', transition: 'fade' });
}

不幸的是,我仍然最终得到了无尽的加载颜色框,但我确认我的图像锚点都有类“测试”。在整个过程中 - 我还验证了控制台中没有JS错误。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

这里有一个FAQ条目: http://www.jacklmoore.com/colorbox/faq/#faq-click

  

创建用于打开图库的单独链接

     

假设您已将Colorbox分配给文档中的一组链接,   但是你也想要一个打开第一个的“Open Gallery”链接   你的集合中的项目。单击“打开图库”时,您需要阻止   默认操作,然后在第一个设置项上触发单击事件。

var $gallery = $("a[rel=gallery]").colorbox();
$("a#openGallery").click(function(e){
    e.preventDefault();
    $gallery.eq(0).click();
});