我可以禁用右击在我的网页不使用JavaScript?我问这个问题是因为大多数浏览器允许用户禁用JavaScript。
如果不是,我如何使用JavaScript禁用右键?
我可以禁用右击在我的网页不使用JavaScript?我问这个问题是因为大多数浏览器允许用户禁用JavaScript。
如果不是,我如何使用JavaScript禁用右键?
当前回答
当然,就像这里的所有其他评论一样,这根本行不通。
我曾经为客户端构建了一个简单的java applet,它强制任何图像的捕获都通过屏幕捕获来完成,您可能会考虑类似的技术。在有限的范围内,它是有效的,但我仍然认为这是浪费时间。
其他回答
如果你只是想禁用右键保存网页上的图像,请使用以下CSS解决方案:
your-img-tag {
pointer-events: none;
}
在同一映像上实现之前:
在同一映像上实现后:
在Chrome和Firefox中都进行了测试。
当然,就像这里的所有其他评论一样,这根本行不通。
我曾经为客户端构建了一个简单的java applet,它强制任何图像的捕获都通过屏幕捕获来完成,您可能会考虑类似的技术。在有限的范围内,它是有效的,但我仍然认为这是浪费时间。
首先,如果不使用客户端功能,就无法实现这一点。这是javascript运行的地方。
其次,如果您试图控制终端用户可以从您的网站消费什么,那么您需要重新考虑如何显示这些信息。图像有一个公共url,可以通过HTTP获取,而不需要浏览器。
身份验证可以控制谁可以访问哪些资源。
在图像中嵌入水印可以证明图像来自特定的人/公司。
归根结底,资源管理实际上是用户/客户管理。
互联网的第一条规则,如果你不想让它被拿走,就不要让它公开!
互联网的第二条规则,如果你不想要它被拿走,就不要把它放在网上!
将此代码放入页面的<head>标记中。
<script type="text/javascript">
function disableselect(e){
return false
}
function reEnable(){
return true
}
//if IE4+
document.onselectstart=new Function ("return false")
document.oncontextmenu=new Function ("return false")
//if NS6
if (window.sidebar){
document.onmousedown=disableselect
document.onclick=reEnable
}
</script>
这将禁用右键点击整个网页,但只有当JavaScript启用。
如果你的目标是阻止别人下载你的图片,就像大多数人说的那样,禁用右键几乎是无效的。
假设您正在尝试保护图像,替代方法是-
使用flash播放器,用户无法下载,但他们可以轻松地进行屏幕捕捉。
如果你想更笨拙,使图像的背景一个div,包含一个透明的图像,à la -
<div style="background-image: url(YourImage.jpg);">
<img src="transparent.gif"/>
</div>
将足以阻止随意窃取您的图像(参见下面的示例),但与所有这些技术一样,如果对html有基本的了解,就很难击败它们。