首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用javascript禁用组合键?

如何使用javascript禁用组合键?
EN

Stack Overflow用户
提问于 2012-07-11 21:22:51
回答 3查看 8.5K关注 0票数 2

提前感谢您的回复。我想使用javascript禁用IE的查看源码快捷键。要禁用"Ctrl + C",我使用以下I函数:

代码语言:javascript
复制
function disableCopy() {
     // current pressed key
     var pressedKey = String.fromCharCode(event.keyCode).toLowerCase();
     if (event.ctrlKey && (pressedKey == "c")) {
         // disable key press porcessing
         event.returnValue = false;
     }
}

有谁能建议如何禁用Alt+V+C组合吗?

EN

回答 3

Stack Overflow用户

发布于 2012-07-11 21:27:57

每种浏览器都有自己的内置功能,可以查看源代码或网页。我们可以做一件事。这就是在你的页面上禁用右键点击。

对于禁用右键单击,请使用以下代码:

代码语言:javascript
复制
<SCRIPT TYPE="text/javascript">
function disableselect(e){
return false
}
function reEnable(){
return true
}
//if IE4+
document.onselectstart=new Function ("return false")
//if NS6
if (window.sidebar){
document.onmousedown=disableselect
document.onclick=reEnable
}
</SCRIPT>

记住一件事。我们可以使用firebug或其他一些第三方工具来查看此源代码。所以我们不能100%这样做。

票数 2
EN

Stack Overflow用户

发布于 2012-07-11 21:39:33

您不应该真的阻止查看代码。为什么?

原因

  1. 经过你所有的努力,如果有人确定他仍然可以看到你的代码,
  2. 你会通过这样做来诽谤你的网站。
  3. 你会表现得像一个“菜鸟”,就像其他开发人员通常看到的代码一样,他们会通过禁用javascript.
  4. There来突破你的安全措施,因为你的代码中没有敏感信息(我想),这可能会被用来构成威胁。但是,如果你有一些代码可以用来攻击网站,你真的应该考虑删除这些代码,确保网站的安全。

禁用组合

代码语言:javascript
复制
  document.onkeydown = function(e) {
        if (e.altKey && (e.keyCode === 67||e.keyCode === 86)) {//Alt+c, Alt+v will also be disabled sadly.
            alert('not allowed');
        }
        return false;
};​

不管怎样,因为我知道怎么做,所以我会教你。

此处要禁用右键单击:

代码语言:javascript
复制
function clickIE() {if (document.all) {return false;}} 
function clickNS(e) {if 
(document.layers||(document.getElementById&&!document.all)) { 
if (e.which==2||e.which==3) {return false;}}} 
if (document.layers) 
{document.captureEvents(Event.MOUSEDOWN);document.onmousedown=clickNS;} 
else{document.onmouseup=clickNS;document.oncontextmenu=clickIE;} 
document.oncontextmenu=new Function("return false") 
票数 1
EN

Stack Overflow用户

发布于 2012-07-11 21:51:04

alt +V+C是一个非常奇怪的组合。尽管下面的代码可以正常工作,但它有点像黑客。

代码语言:javascript
复制
if (event.altKey) {
    if (event.keyCode == 67 && window.prevKey == 86)
        event.preventDefault();
    else if (event.keyCode == 86 && window.prevKey == 67)
        event.preventDefault();
    window.prevKey = event.keyCode
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11433647

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档