有个禁止复制的需求
禁止左键选中
// 1.禁用左键选中
document.addEventListener('selectstart', function (e) {
return e.returnValue = false
});
禁止右键
<p>不好复制的文件</p>
<script>
// 2.禁用右键菜单
document.addEventListener('contextmenu', function (e) {
e.returnValue = false
});
</script>
禁止f12
//3 禁用F12
document.addEventListener('keydown', function (e) {
if (e.key == 'F12') {
e.preventDefault();
}
});
禁止其他方式调用控制台
// 4通过其他方式打开控制台,关闭页面
function resize () {
var threshold = 200;
var widthThreshold = window.outerWidth - window.innerWidth > threshold;
var heightThreshold = window.outerHeight - window.innerHeight > threshold;
if (widthThreshold || heightThreshold) {
window.close();
window.location = "about:blank";
}
}
window.addEventListener('resize', resize);
独立窗口的控制台
// 5.控制台是单独的窗口显示,不会改变原来网页的高度和宽度, 但是你只要修改页面元素我就重新加载一次数据,让你无法修改页面元素(不支持IE9以下浏览器)
if (window.addEventListener) {
window.addEventListener("DOMCharacterDataModified", function () { window.location.reload(); }, true);
window.addEventListener("DOMAttributeNameChanged", function () { window.location.reload(); }, true);
window.addEventListener("DOMCharacterDataModified", function () { window.location.reload(); }, true);
window.addEventListener("DOMElementNameChanged", function () { window.location.reload(); }, true);
window.addEventListener("DOMNodeInserted", function () { window.location.reload(); }, true);
window.addEventListener("DOMNodeInsertedIntoDocument", function () { window.location.reload(); }, true);
window.addEventListener("DOMNodeRemoved", function () { window.location.reload(); }, true);
window.addEventListener("DOMNodeRemovedFromDocument", function () { window.location.reload(); }, true);
window.addEventListener("DOMSubtreeModified", function () { window.location.reload(); }, true);
}