ColorBox没有从后面拾取脚本

时间:2013-09-13 11:25:40

标签: javascript jquery html colorbox

我正在使用彩盒来显示一些图像。我用来调用图像的代码是:

jQuery(".ImgPop").colorbox({
    opacity: 0.4,
    rel: 'ImgPop',
    iframe: false,
    width: '770px',
    height: '680px',
    scalePhotos: true,
    current: false
});

这样可以正常工作并弹出我可以浏览它们的图像。

我的问题出现在我调用上面代码的原始页面上,我有一个脚本,阻止使用代码右键单击图像:

$(document).ready(function(){
    jQuery("img").bind("contextmenu",function(e){
        alert('Images are Copyright of this site.');
            return false;
    });
});

除了colorbox之外,此代码适用于我网站上的所有内容。有没有办法将这个脚本传递到colorbox或者我做错了什么?

2 个答案:

答案 0 :(得分:0)

试试这个:

$(document).bind("contextmenu",function(e){
      e.preventDefault()
});

或者这样做:

$('img').on('contextmenu', function(e){
    return false;
});

或者

$(document).on('mousedown', 'img', function(e){
    if(e.which === 3){
        $(this).on('contextmenu', function(e){
            e.preventDefault();
        });
    };
});

答案 1 :(得分:0)

我发现了如何做到这一点......

这是我使用的代码:

// This is used to prevent right clicks on images within colorbox
jQuery(document).bind('cbox_complete', function(){ 
    jQuery("img").bind("mousedown",function(e){
        if(e.which == 3){
            alert('Images are Copyright of this site.');
            return false;
        }

    });
});

// This removes the above mousedown event so that outside of colorbox
// the prevent image notification does not show twice.
jQuery(document).bind('cbox_closed', function(){ 
    jQuery("img").unbind("mousedown");
});