javascript实现禁止复制网页内容


Posted in Javascript onDecember 16, 2014

做个笔记

// 禁用右键菜单、复制、选择

$(document).bind("contextmenu copy selectstart", function() {

    return false;

});

// 禁用Ctrl+C和Ctrl+V(所有浏览器均支持)

$(document).keydown(function(e) {

    if(e.ctrlKey && (e.keyCode == 65 || e.keyCode == 67)) {

        return false;

    }

});

// 设置CSS禁止选择(如果写了下面的CSS则不需要这一段代码,新版浏览器支持)

$(function() {

    $("body").css({

        "-moz-user-select":"none",

        "-webkit-user-select":"none",

        "-ms-user-select":"none",

        "-khtml-user-select":"none",

        "-o-user-select":"none",

        "user-select":"none"

    });

});

防止禁用JavaScript后失效,可以写在CSS中(新版浏览器支持,并逐渐成为标准):

body {

    -moz-user-select:none;  /* Firefox私有属性 */

    -webkit-user-select:none;  /* WebKit内核私有属性 */

    -ms-user-select:none;  /* IE私有属性(IE10及以后) */

    -khtml-user-select:none;  /* KHTML内核私有属性 */

    -o-user-select:none;  /* Opera私有属性 */

    user-select:none;  /* CSS3属性 */

}

代码很简单,实现的功能却很实用,不过要提示的是,在这个自由的互联网上其实做禁止复制不是件很值得推广的事,大家依情况实用吧。

Javascript 相关文章推荐
javaScript call 函数的用法说明
Apr 09 Javascript
如何获取select下拉框的值(option没有及有value属性)
Nov 08 Javascript
解析jquery中的ajax缓存问题
Dec 19 Javascript
jQuery实现将页面上HTML标签换成另外标签的方法
Jun 09 Javascript
Javascript中的方法和匿名方法实例详解
Jun 13 Javascript
Jqprint实现页面打印
Jan 06 Javascript
学习使用Bootstrap输入框、导航、分页等常用组件
May 11 Javascript
Vue axios 中提交表单数据(含上传文件)
Jul 06 Javascript
js学使用setTimeout实现轮循动画
Jul 17 Javascript
vue中的scope使用详解
Oct 29 Javascript
vue 路由嵌套高亮问题的解决方法
May 17 Javascript
通过实例解析chrome如何在mac环境中安装vue-devtools插件
Jul 10 Javascript
node.js中的fs.rmdirSync方法使用说明
Dec 16 #Javascript
node.js中的fs.rmdir方法使用说明
Dec 16 #Javascript
使用Chrome调试JavaScript的断点设置和调试技巧
Dec 16 #Javascript
node.js中的fs.fchownSync方法使用说明
Dec 16 #Javascript
node.js中的fs.fchown方法使用说明
Dec 16 #Javascript
node.js中的fs.chownSync方法使用说明
Dec 16 #Javascript
node.js中的fs.chown方法使用说明
Dec 16 #Javascript
You might like
英雄试炼之肉山谷—引领RPG新潮流
2020/04/20 DOTA
使用Codeigniter重写insert的方法(推荐)
2017/03/23 PHP
PHP实现二维数组中的查找算法小结
2018/06/09 PHP
浅析JavaScript中的隐式类型转换
2013/12/05 Javascript
javascript类型转换示例
2014/04/29 Javascript
为什么JS中eval处理JSON数据要加括号
2015/04/13 Javascript
nodejs实现获取某宝商品分类
2015/05/28 NodeJs
JavaScript采用递归算法计算阶乘实例
2015/08/04 Javascript
Node.js与Sails ~项目结构与Mvc实现及日志机制
2015/10/14 Javascript
jQuery实现页面下拉100像素出现悬浮窗口的方法
2016/09/05 Javascript
详解JSON1:使用TSQL查询数据和更新JSON数据
2016/11/21 Javascript
jQuery表单验证之密码确认
2017/05/22 jQuery
Vue2.0实现将页面中表格数据导出excel的实例
2017/08/09 Javascript
JS的函数调用栈stack size的计算方法
2018/06/24 Javascript
vue路由守卫+登录态管理实例分析
2019/05/21 Javascript
基于mpvue的简单弹窗组件mptoast使用详解
2019/08/02 Javascript
vue项目中引入Sass实例方法
2019/08/27 Javascript
Vue项目中Api的组织和返回数据处理的操作
2019/11/04 Javascript
深入浅析JavaScript中的in关键字和for-in循环
2020/04/20 Javascript
Python读写unicode文件的方法
2015/07/10 Python
python基础_文件操作实现全文或单行替换的方法
2017/09/04 Python
Python使用遗传算法解决最大流问题
2018/01/29 Python
python字典一键多值实例代码分享
2019/06/14 Python
python pytest进阶之conftest.py详解
2019/06/27 Python
6行Python代码实现进度条效果(Progress、tqdm、alive-progress​​​​​​​和PySimpleGUI库)
2020/01/06 Python
Python函数默认参数常见问题及解决方案
2020/03/26 Python
使用Python和百度语音识别生成视频字幕的实现
2020/04/09 Python
Window版下在Jupyter中编写TensorFlow的环境搭建
2020/04/10 Python
优秀的茶餐厅创业计划书
2014/01/03 职场文书
大学专科自荐信
2014/06/17 职场文书
建筑工地标语
2014/06/18 职场文书
职代会闭幕词
2015/01/28 职场文书
教师岗位职责
2015/02/03 职场文书
锦旗赠语
2015/06/23 职场文书
教师节感想
2015/08/11 职场文书
Qt自定义Plot实现曲线绘制的详细过程
2021/11/02 Python