有时候我们希望自己的网页源码不被查看,这时需要关掉鼠标的右击事件;有时候我们也希望禁止选择页面内容Ctrl+C复制。
1.禁止右键查看源码;
<script> //设置右键事件 function noMenuOne() { alert('禁止右键菜单!'); return false; } document.oncontextmenu = noMenuOne</script>
第二种方法:
<script> //当用户按下鼠标按钮触发 function noMenu2() { if(event.button == 2) { alert('禁止右键菜单!'); return false; } } document.onmousedown = noMenu2; </script>
2.禁止复制页面内容
<body oncopy="alert('禁止复制');return false;"> 标题XXX <!-- 1. Define some markup --> <input type="text" id="name" /> <button class="btn">Copy</button> </body>
3.复制内容到剪切板
需要clipboard.min.js插件库,也不支持IE8,如果有需求需要自己写IE8的,针对IE浏览器来说, 实现起来就很简单, 因为直接有clipboardData 的对象可以使用。
<script src="js/clipboard.min.js"></script>
<body> 标题XXX <!-- 1. Define some markup --> <input type="text" id="name" /> <button class="btn">Copy</button> </body> ................ <script> /*不支持IE8,IE8以上的可以*/ var clipboard = new ClipboardJS('.btn', { text: function() { //返回的值是复制到剪切板的内容 return $("#name").val(); } }); </script>
其实clipboard 也可以直接绑定获取某个元素的值,更多的参考github上的demo,github地址:https://github.com/zenorocha/clipboard.js
还有好多其他的方法,有需要的时候再查吧。