限制图像使用

时间:2013-10-17 08:04:51

标签: jquery image dom-manipulation

我发现了多种防止图像被盗的方法。

目前我坚持使用这个(基于jQuery):

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

禁用图像上的上下文菜单。

我现在可以想到两种解决方案,但不知道这是否是一种好方法:

通过检查源代码防止窃取:
也许有一个解决方案可以加载图像,但不会将链接留在源代码中? 我想到了一个空图像标签,它的源代码是jQuery。

通过检查网络(来自开发工具)防止窃取
也许图像可以作为base64加密图像加载? 例如:我的页面请求文件base64.php?i = flowers.jpg,此页面将flowers.jpg作为base64图像返回。

你怎么看?

2 个答案:

答案 0 :(得分:0)

好的我必须把它作为档案::)希望这能给你指路,请告诉我这是否有帮助,我会删除它。

通过做(Jquery contextmenu brute forcing)您在问题中提到的内容,您只是禁止右键单击方法,还有更多方法可以获取图像来源。

对此没有一个银弹解决方案。

您可以随时让设计团队将图像分片,然后您可以将它们组合在一起。

结帐图片热链接 http://www.hongkiat.com/blog/smarter-way-to-prevent-image-hotlinking-with-htaccess/

请先阅读此内容:http://www.davidairey.com/stop-image-theft-hotlinking-htaccess/

  1. 将外部网站的链接重定向到您的" DON&#t; T STEAL"图形。该技术是对站点根目录中的.htaccess文件的补充。

  2. 为您的图片添加一个很大的版权,然后在您自己的网站上裁剪出来。

  3. 将图像包含为CSS背景图像

  4. 这里的一些技巧

    • http://css-tricks.com/how-to-steal-a-websites-background-image/

      1. 一些AWFUL(和非有效)技术
    • 禁用右键单击Javascript。

       jQuery("img#jquery_test_image").bind("contextmenu", function(e){ return false; });
      

      jQuery("img#jquery_test_image").mousedown(function(e){ return false; });
      
    • 由于许多盗贼可能会使用右键单击,另存为抓取图像的技术,这可能会使他们停止约2秒钟。这并不能防止点击和拖拽,并且比其他任何东西都更加烦人/有害。 版权/水印您的图像。

    • 很好,我可以选择让我的图像看起来像垃圾还是拥有一个会被忽视或裁掉的小版权?
    • 将图像分割成碎片并将其显示在表格中。 这是什么,1999年?我知道手动在#2下方的图像下添加版权也是一件小事,但对于任何一张图片来说,这都是太费力了。
    • 将图片设为Flash

    • 在真实图像上放置空白文件

    <强>参考

    http://css-tricks.com/techniques-for-fighting-image-theft/

    http://www.webresourcesdepot.com/10-ways-to-protect-images-from-being-stolen/

答案 1 :(得分:0)

关于网站媒体的第一条规则:您可以看到的内容,您可以下载 ...

如果要禁用图像的上下文菜单,则不需要jQuery。

可以使用<img oncontextmenu="return false;" src="" />

轻松完成

示例:http://jsfiddle.net/GpJbU/

如果您真的想使用jQuery,可以使用:

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

$('img').on('mousedown', function(e){ 
    if( e.button == 2 ) {
      return false; 
    }
}); 

示例:http://jsfiddle.net/sPdn6/

修改

使用base64包括阻止上下文菜单,您可以查看此示例:http://jsfiddle.net/WfFxb但是如果您点击F12(开发人员工具)并选中“网络”标签,您仍然可以下载此图像。以为这对新手来说很难。