2013-08-30 39 views
0

我有一个列出图像网格的图库页面。在点击其中一个图像时,我想让colorbox弹出并允许用户循环显示图像。在IE上的Colorbox,打开一个colorbox,然后立即关闭页面的链接

使用简单的colorbox在所有浏览器上都可以这样做,IE除外。即使在打开彩盒之后,IE仍然遵循链接。

原始代码:

$('a.gallery_image').colorbox({ 
    transition: 'fade', 
    opacity: 0.7, 
    speed: 100, 
    fixed: true, 
    rel: 'gal_img', 
    scalePhotos: true, 
    maxWidth: ($(window).width()/100) * 85, 
    maxHeight: ($(window).height()/100) * 85 
}); 

我已成功使用,以产生类似的效果如下:

$('a[rel="gallery_image"]').click(function(e){ 
    e.preventDefault(); 

    $('a[rel="gallery_image"]').colorbox({ 
     maxWidth: '90%', 
     initialWidth: '200px', 
     initialHeight: '200px', 
     speed: 700, 
     rel: 'gal_img', 
     overlayClose: false 
    }); 
$.colorbox({ 
    href: $(this).attr('href') 
}); 
//return false; 
}); 

然而,IE仍然有同样的问题。如果我然后取消注销返回false ;. IE将不再离开页面,但彩盒不会作为一个画廊,意味着用户无法滚动浏览图片。

我不知道如何阻止IE跟随链接,或者为什么它甚至在第一位。

+0

哪个IE版本?旧版本对错过逗号真的很挑剔。 (在maxHeight之后:($(window).height()/ 100)* 85和overlayClose:false) – BakaKuna

+0

IE7通过到10,和我有同样的问题,即使当我让它决定宽度等 – loony383

+0

也只是试过逗号(误解你第一次指出的内容),不幸的是它没有帮助。 – loony383

回答

0

问题原来是在图像url上有一个itemprop =“image”。不太确定为什么导致这个问题,但删除它已经解决了这个问题。这意味着JS回到了我的原创:

$('a.gallery_image').colorbox({ 
    transition: 'fade', 
    opacity: 0.7, 
    speed: 100, 
    fixed: true, 
    rel: 'gal_img', 
    scalePhotos: true, 
    maxWidth: ($(window).width()/100) * 85, 
    maxHeight: ($(window).height()/100) * 85 
}); 
相关问题