2013-08-17 116 views
0

什么是最好的做法/方法/防止下列语言:如何防止图片另存为+防止图像拖放到桌面+防止截图在桌面浏览器

  • 图片另存为
  • 拖动图片&降到桌面
  • 截图/ Screengrabs

..on桌面浏览器

(当尝试截图时,目击者使用了“黑屏”,并且实现了“无法触及”的图像......)

+0

你不能可靠地做任何这些事情。 – Pointy

+0

这些东西的任何进展是有帮助的..已经看到了使用屏幕截图时截图,并实现图像是不可触摸的.. – sourcingsynergy

+1

我认为你应该写一个操作系统或自定义浏览器! –

回答

1

为了防止用户右键单击图像并选择另存为,您可以添加代码oncontextmenu="return false"oncontextmenu检测到用户右键单击并且return false停止该操作。

然后,如果您执行代码draggable="false",即使用户选择了该图像,用户也无法拖动该图像。我认为没有办法阻止人们使用屏幕抓取工具,但这里有一些代码阻止Google图片和其他搜索引擎抓取图片:<meta name="robots" content="noimageindex"></meta>

总而言之,请尝试以下方法:将<meta name="robots" content="noimageindex"></meta>放置在文档头部,然后在文档正文中放置<img src="mygreatimage.png" alt="An awesome image" oncontextmenu="return false" draggable="false">

+0

有一点需要注意。这两个javascript函数都能很好地工作,虽然有一种解决方法,那就是draggable =“false”。如果图像突出显示,偶尔可以拖动它。任何调整? – sourcingsynergy

+0

您可以禁用使用'style =“选择图像的功能 - webkit-user-select:none; -moz-user-select:none; -o-user-select:none; -user-select:none” '。希望帮助:) – Toastrackenigma

5

没有将&下降,防止另存为(不能真正防止但慢一点)

document.getElementById('my-image').ondragstart = function() { return false; }; 

一种方法是创建具有链接到图像内联样式核实。

<div style="width: 200px; height: 200px; background: url('yourcraphere.jpg');"></div> 

我几乎可以肯定你不能禁用屏幕截图。截图不取决于浏览器权限,这是一个操作系统的事情。如果用户点击了打印屏幕按钮,你可以尝试将所有东西全部清除掉?

用户将始终可以使用开发人员工具查看您的资源并抓取您使用的任何图像。希望这些方法有助于防止大多数人窃取您想要保护的任何内容......您也可以尝试使用水印。希望有所帮助。

+0

不知道该怎么做......我只是想它可以做到。 –