JavaScript鼠標(biāo)禁止右鍵禁止打開(kāi)控制臺(tái)及鍵盤(pán)禁用
前言
大家好,今天和大家分享一下在前端js中禁止鼠標(biāo)在瀏覽器中右鍵,禁止鼠標(biāo)選中和禁止鍵盤(pán)按鍵。
這個(gè)方法是我在制作一個(gè)單詞考核系統(tǒng)時(shí)所使用到的,因?yàn)樵诳荚嚻陂g如果打開(kāi)控制臺(tái),通過(guò)控制臺(tái)找到了正確的答案,那么就沒(méi)有意義了。
所以就需要將控制臺(tái)禁用,所應(yīng)用到的也是一些基礎(chǔ)的知識(shí),下面我們就一起來(lái)看一看吧!
一、禁用
1. 禁用鼠標(biāo)右鍵
document.oncontextmenu = new Function("event.returnValue=false");oncontextmenu是JavaScript中的一個(gè)事件屬性,用于在用戶右擊鼠標(biāo)時(shí)觸發(fā)相應(yīng)的事件處理程序。當(dāng)用戶右擊鼠標(biāo)時(shí),瀏覽器會(huì)顯示一個(gè)上下文菜單,該屬性可以用于阻止默認(rèn)的上下文菜單行為,或者自定義右鍵菜單的行為。
2. 禁用鼠標(biāo)選中
document.onselectstart = new Function("event.returnValue=false");onselectstart是一個(gè)事件處理程序?qū)傩?,它在用戶開(kāi)始選擇文本時(shí)觸發(fā)。它可以用于防止用戶選擇文本或在拖動(dòng)元素時(shí)選擇文本。
3. 禁用鍵盤(pán)F12
document.addEventListener("keydown", function (e) {
console.log(e。key);
if (e.key == "F12") {
e.preventDefault(); // 如果按下鍵F12,阻止事件
}
});除了上面的寫(xiě)法外還有其他的一些寫(xiě)法。
document.onkeydown = () => {
console.log(window.event.keyCode);
for (let i = 9; i < 47; i++) {
if (window.event && window.event.keyCode == i) {
return false;
}
}
for (let i = 58; i < 65; i++) {
if (window.event && window.event.keyCode == i) {
return false;
}
}
for (let i = 91; i < 300; i++) {
if (window.event && window.event.keyCode == i) {
return false;
}
}
// 禁用ctrl+shift+i
if (window.event.ctrlKey && window.event.shiftKey && window.event.keyCode == 73) {
return false;
}
if (window.event.shiftKey) {
return false;
}
// 禁用ctrl+r
if (window.event.ctrlKey && window.event.keyCode == 82) {
return false;
}
}onkeydown是JavaScript中的事件處理程序,它在用戶按下鍵盤(pán)上的任何鍵時(shí)觸發(fā)??梢詫nkeydown事件與JavaScript函數(shù)一起使用,以便在用戶按下鍵時(shí)執(zhí)行某些操作。例如,可以使用onkeydown事件來(lái)捕獲用戶按下Enter鍵并提交表單。
可以根據(jù)自己的需要來(lái)禁用按鍵,這個(gè)是我的項(xiàng)目需要所以加了禁用其它的鍵盤(pán)按鍵,上面的這個(gè)ctrl+shift+i也是可以打開(kāi)瀏覽器的。
二、所有代碼
// 1.禁用右鍵菜單
document.oncontextmenu = new Function("event.returnValue=false");
// 2.禁用鼠標(biāo)選中
document.onselectstart = new Function("event.returnValue=false");
document.onkeydown = () => {
console.log(window.event.keyCode);
for (let i = 9; i < 47; i++) {
if (window.event && window.event.keyCode == i) {
return false;
}
}
for (let i = 58; i < 65; i++) {
if (window.event && window.event.keyCode == i) {
return false;
}
}
for (let i = 91; i < 300; i++) {
if (window.event && window.event.keyCode == i) {
return false;
}
}
// 禁用ctrl+shift+i
if (window.event.ctrlKey && window.event.shiftKey && window.event.keyCode == 73) {
return false;
}
if (window.event.shiftKey) {
return false;
}
// 禁用ctrl+r
if (window.event.ctrlKey && window.event.keyCode == 82) {
return false;
}
}總結(jié)
最后偷偷的告訴大家,還有一個(gè)可以打開(kāi)控制臺(tái)的方法,哪就是在刷新瀏覽器頁(yè)面時(shí)同時(shí)按下F12,這樣也是可以打開(kāi)的,所以在這個(gè)項(xiàng)目中我對(duì)刷新也做了一些操作。
這個(gè)打開(kāi)控制臺(tái)的方法大家可以試一下,但是要先把F12給禁止了,不然搞錯(cuò)了還不知道,這個(gè)方法不是特別容易打開(kāi),要多嘗試幾次。
以上就是本章的全部?jī)?nèi)容了,感謝您的閱讀,希望能夠幫助到您。
到此這篇關(guān)于JavaScript鼠標(biāo)禁止右鍵禁止打開(kāi)控制臺(tái)及鍵盤(pán)禁用的文章就介紹到這了,更多相關(guān)js鼠標(biāo)禁止右鍵禁止打開(kāi)控制臺(tái)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
原生Javascript實(shí)現(xiàn)五角星評(píng)分
這篇文章主要為大家詳細(xì)介紹了原生Javascript實(shí)現(xiàn)五角星評(píng)分,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-09-09
jsp+javascript打造級(jí)連菜單的實(shí)例代碼
jsp+javascript打造級(jí)連菜單的實(shí)例代碼,需要的朋友可以參考一下2013-06-06
小議Function.apply() 之一------(函數(shù)的劫持與對(duì)象的復(fù)制)
小議Function.apply() 之一------(函數(shù)的劫持與對(duì)象的復(fù)制)...2006-11-11
JS前端千萬(wàn)級(jí)彈幕數(shù)據(jù)循環(huán)優(yōu)化示例
這篇文章主要為大家介紹了JS前端一千萬(wàn)條彈幕數(shù)據(jù)循環(huán)優(yōu)化示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-07-07
JavaScript如何實(shí)現(xiàn)對(duì)數(shù)字保留兩位小數(shù)一位自動(dòng)補(bǔ)零
本文給大家介紹基于JavaScript如何實(shí)現(xiàn)對(duì)數(shù)字保留兩位小數(shù)一位自動(dòng)補(bǔ)零的實(shí)例代碼,代碼簡(jiǎn)單易懂,感興趣的朋友一起學(xué)習(xí)吧2015-12-12
Javascript類(lèi)庫(kù)的頂層對(duì)象名用戶體驗(yàn)分析
針對(duì)jQuery、Ext、KISSY三者類(lèi)庫(kù)的對(duì)比及分析已經(jīng)很多了,但多數(shù)是從功能和設(shè)計(jì)的角度切入,因此本篇文章決定換一個(gè)特殊的角度,從各類(lèi)庫(kù)的頂層對(duì)象名的鍵盤(pán)輸入的體驗(yàn)上來(lái)對(duì)這三個(gè)類(lèi)庫(kù)進(jìn)行比較。2010-10-10
Javascript類(lèi)型系統(tǒng)之String字符串類(lèi)型詳解
這篇文章主要介紹了Javascript類(lèi)型系統(tǒng)之String字符串類(lèi)型詳解的相關(guān)資料,需要的朋友可以參考下2016-06-06
鼠標(biāo)經(jīng)過(guò)顯示二級(jí)菜單js特效
本文章來(lái)給大家推薦一個(gè)不錯(cuò)的鼠標(biāo)經(jīng)過(guò)顯示二級(jí)菜單js特效效果,有需要了解的朋友可以參考一下2013-08-08
eclipse如何忽略js文件報(bào)錯(cuò)(附圖)
eclipse中js文件報(bào)錯(cuò)的情況,或許大家早已習(xí)以為常了,那么有什么好的方法可以將其忽略掉呢?如果你也在尋找此問(wèn)題,那么本文或許可以幫助到你2013-10-10

