如何在JQuery脚本中取消绑定JQZOOM?

时间:2010-02-25 14:35:34

标签: php jquery

此刻我有这个脚本,当缩略图被更改时会更改图像。然后我想将JQZOOM添加到新图像中。但是,如果我把它放在Onclick事件中,它点击它的次数越来越慢......我想因为它运行了多个实例。

有没有解开JQZOOM的东西,然后将它重新绑定到别的东西?

这是我的jquery:

var options = {
    zoomWidth: 400,
    zoomHeight: 325,
    xOffset: 25,
    yOffset: 0,
    position: "right",
    lens: true,
    zoomType: "reverse",
    imageOpacity: 0.5,
    showEffect: "fadein",
    hideEffect: "fadeout",
    fadeinSpeed: "medium",
    title: false
};

$('.jqzoom').jqzoom(options);

$('.single-zoom-image').click ( function () {

    $('#bigProductImage').attr("src", $(this).attr("zoom"));
    $('.jqzoom').attr("href", $(this).attr("extrazoom"));

});

如果有人可以帮助我,请提前致谢。

干杯!

2 个答案:

答案 0 :(得分:2)

这可以按如下方式完成:

修改其他鼠标功能所在的jqzoom1.0.1.js(第90行)

//Handle clicked thumbnails changing the zoomed image
$(this).bind('changeimage', function(){
   smallimage = new Smallimage( $("img", this) );
   largeimage = new Largeimage(a[0].href);
    smallimage.loadimage();
});

按如下方式调用缩放器:

$(document).ready(function(){
var options = {
zoomWidth: 300,
zoomHeight: 200,
xOffset: 30,
yOffset: 0,
position: 'right',
title: false,
showPreload: false
};

//Handle clicking on the thumbnails, swap the mainimage and recycle the zoomer
$('.seemore').bind('click', function(e) {
    e.preventDefault();
    $('.jssProductFullImage').attr('src', $(this).attr('href'));
    $('.zoomer').attr('href', $(this).attr('href') );
    //Recall the zoomer to update the page
    $('.zoomer').trigger('changeimage');

    });
$('.zoomer').jqzoom(options);

});

答案 1 :(得分:2)

$('.jqzoom').removeData('jqzoom');

这份工作对我而言。