0

我想启用jqzoomajaxcolorbox弹出窗口,但它没有正确打开。
我的代码:

/*colorbox*/
$('.colorbox1').colorbox({
overlayClose: true,
opacity: 0.5,
rel: "colorbox"
});

/*jqzoom*/
$('.jqzoom').jqzoom({
    zoomType: 'standard',
    lens:true,
    preloadImages: false,
    alwaysOn:false,
    zoomWidth: 250,
    zoomHeight: 250
});
4

1 回答 1

0

我找到了答案。

不工作的原因: jqZoom在图像加载到Colorbox弹出窗口之前渲染,因此jqZoom无法计算图像的确切尺寸(宽度 X 高度)。

我得到了以下两个解决方案的解决方案解决
方案 1:jqZoomColorbox弹出窗口中超时后渲染/调用

setTimeout(function(){
    $('.jqzoom').jqzoom({
        zoomType: 'standard',
        lens:true,
        preloadImages: false,
        alwaysOn:false,
        zoomWidth: 250,
        zoomHeight: 250
    });
}, 1000);

方案二:渲染成功jqZoom后调用Colorbox

$('.colorbox1').colorbox({
    overlayClose: true,
    opacity: 0.5,
    rel: "colorbox",
    onComplete: function(){
        $('.jqzoom').jqzoom({
            zoomType: 'standard',
            lens:true,
            preloadImages: false,
            alwaysOn:false,
            zoomWidth: 250,
            zoomHeight: 250
        });
    }
});
于 2015-03-22T04:10:56.547 回答