1. 禁止复制(copy),禁用鼠标右键!

<SCRIPT> 
//加入页面保护 
function rf() 
{return false; } 
document.oncontextmenu = rf 
function keydown() 
{if(event.ctrlKey ==true || event.keyCode ==93 || event.shiftKey ==true){return false;} } 
document.onkeydown =keydown 
function drag() 
{return false;} 
document.ondragstart=drag 
function stopmouse(e) { 
if (navigator.appName == 'Netscape' && (e.which == 3 || e.which == 2)) 
return false; 
else if 
(navigator.appName == 'Microsoft Internet Explorer' && (event.button == 2 || event.button == 3)) { 
alert("版权没有,但别复制 :)"); 
return false; 

return true; 

document.onmousedown=stopmouse; 
if (document.layers) 
window.captureEvents(Event.MOUSEDOWN); 
window.onmousedown=stopmouse;

</SCRIPT> 
<script language="javascript"> 
function JM_cc(ob){ 
var obj=MM_findObj(ob); if (obj) { 
obj.select();js=obj.createTextRange();js.execCommand("Copy");} 
}

function MM_findObj(n, d) { //v4.0 
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) { 
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);} 
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[n]; 
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers.document); 
if(!x && document.getElementById) x=document.getElementById(n); return x; 

</script>

2. JS和HTML互转 ~~~~~~~~~

<body> 
<style> 
body{font-size:9pt} 
textarea {color="#707888";font-family:"verdana"} 
.inputs {color="#707888";border:1px solid;background:#f4f4f4} 
</style> 
在这里输入你需要转换的格式,可以是JavaScript也可以是DHtml. 
<br> 
<textarea id="codes" > 
</textarea> 
<br> 
<button  class="inputs"> 
清除输出 
</button> 
<button  class="inputs"> 
全选代码 
</button> 
<button  class="inputs"> 
拷贝代码 
</button> 
<button  class="inputs"> 
粘贴代码 
</button> 
<button  class="inputs"> 
Js转Html 
</button> 
<button  class="inputs"> 
Html转Js 
</button> 
<button  class="inputs"> 
点击显示源文件 
</button> 
<button  class="inputs"> 
预览代码[F12] 
</button> 
<br> 
这个是输出格式的窗口: 
<br> 
<textarea id="outputs" ></textarea> 
<br> 
一个不好的消息:这个Js转Html部分现在只是支持由这个程序生成的 
<br> 
作者:FlashSoft2000 QQ:14433548 
<input id="hide" style='display:none'> 
<script> 
//定义title 
document.title="多功能网页转换" 
//显示网页源文件 
function writes() 

outputs.value=document.body.outerHTML; 

//清除输出窗口 
function clears() 

outputs.innerHTML=''; 

//替换特定字符 
//n1字符串,n2要替换的字,n3替换的字 
function commute(n1,n2,n3) 

var a1,a2,a3=0,a0='' 
a1=n1.length; 
a2=n2.length; 
for(x=0;x<=(a1-a2);x++) 

if(n1.substr(x,a2)==n2) 

a0+=n1.substring(a3,x); 
a0+=n3; 
x+=(a2-1); 
a3=x+1; 


if(a3<a1)a0+=n1.substring(a3,a1) 

return a0; 


//转换JavaScript为DHtml 
function js2html() 

hide.value=codes.value 
hide.value=commute(hide.value,'"""','"'); 
hide.value=commute(hide.value,'document.write("',''); 
hide.value=commute(hide.value,'")',''); 
hide.value=commute(hide.value,'<script>',''); 
hide.value=commute(hide.value,'<"/script>',''); 
outputs.value=hide.value 

//转换DHtml为JavaScript 
function html2js() 

hide.value=codes.value 
hide.value=commute(hide.value,'"','"""'); 
hide.value=commute(hide.value,'""','""""'); 
hide.value=commute(hide.value,'<"/script>','<""/script>'); 
outputs.value="<script>document.write("""+hide.value+""")<"/script>" 

//预览代码 
function seeHtm() 

open().document.write("<title>测试代码窗口</title>"+outputs.value); 

//用快捷键F12预览 
document.onkeydown=seeHtms 
function seeHtms() 

if((event.keyCode==123)) 

open().document.write("<title>测试代码窗口</title>"+outputs.value); 


//全选代码 
function ta() 

outputs.select() 

//拷贝代码 
function tc() 

document.execCommand("Copy") 

//粘贴代码 
function tp() 

outputs.focus() 
document.execCommand("Paste") 

</script>

  出处至:http://xiaobingandxiaoer.iteye.com/blog/1917696

js 技巧 (九)按键JS的更多相关文章

  1. JS技巧

    2016-08-09 200多个js技巧代码(Down) word下载 200多个js技巧代码 目录 1.文本框焦点问题... 6 2.网页按钮的特殊颜色... 6 3.鼠标移入移出时颜色变化... ...

  2. Atitit.android js 的键盘按键检测Back键Home键和Menu键事件

    Atitit.android js 的键盘按键检测Back键Home键和Menu键事件 1. onKeyDown @Override public boolean onKeyDown(int keyC ...

  3. js获取每个按键的ASCII值

    通过js绑定键盘按下事件onkeydown获取每个按键的ascII值. js获取每个按键的ascii值 <script language="javascript"> / ...

  4. Bootstrap入门(二十九)JS插件6:弹出框

    Bootstrap入门(二十九)JS插件6:弹出框 加入小覆盖的内容,像在iPad上,用于存放非主要信息 弹出框是依赖于工具提示插件的,那它也和工具提示是一样的,是需要初始化才能够使用的 首先我们引入 ...

  5. Atitit.js的键盘按键事件捆绑and事件调度

    Atitit.js的键盘按键事件捆绑and事件调度 1. Best的方法还是 objEvtMap[ id+evt ]=function(evt,element) 2. Event bind funct ...

  6. 提升开发幸福感的10条JS技巧

    鱼头总结一些能够提高开发效率的JS技巧,这些技巧很实用,觉得挺好,想推荐给大家,所以有了这篇文章. 生成随机UID const genUid = () => {  var length = 20 ...

  7. 你应该了解的25个JS技巧

    目录 1. 类型检查小工具 2. 检查是否为空 3. 获取列表最后一项 4. 带有范围的随机数生成器 5. 随机 ID 生成器 6. 创建一个范围内的数字 7. 格式化 JSON 字符串,string ...

  8. JavaScript学习总结(十九)——使用js加载器动态加载外部Javascript文件

    今天在网上找到了一个可以动态加载js文件的js加载器,具体代码如下: JsLoader.js 1 var MiniSite=new Object(); 2 /** 3 * 判断浏览器 4 */ 5 M ...

  9. C#使用技巧之调用JS脚本(转)

    .创建个Winform项目. .在From1上增加一个文本框一个按钮. .在解决方案中创建一个test.js文件. test.js代码如下: function sayHello(str) { retu ...

  10. vue.js技巧小计

    //删除数组索引方法01 del (index) { this.arr.splice(index ,1); } //删除数组索引方法01 del (index) { this.$delete(this ...

随机推荐

  1. bzoj P2045 方格取数加强版【最大费用最大流】

    今天脑子不太清醒,把数据范围看小了一直TTTTLE-- 最大费用最大流,每个格子拆成两个(x,y),(x,y)',(x,y)向(x,y)'连一条费用a[x][y]流量1的边表示选的一次,再连一条费用0 ...

  2. [App Store Connect帮助]七、在 App Store 上发行(2.4)设定价格与销售范围:安排价格调整

    如果您拥有<付费应用程序协议>,则可以为您的 App 安排随时间推移的价格调整.您可以安排具有明确开始日期和结束日期的定价调整,以及没有结束日期的永久性定价调整.例如,您可以设置一个为期 ...

  3. python安装教学

    1.首先登陆到python的官方网站 1https://www.python.org/ 2.鼠标放在Download上,点击下面对应的型号,我的是Windows 3.点击Windows到此页面,点击3 ...

  4. 解决window.opener.obj instanceof Object会输出false的问题

    在a.html页面中: window.obj = {name: "jinbang"} 在a.html页面中打开新窗口b.html页面: console.log(window.ope ...

  5. COT2 - Count on a tree II(树上莫队)

    COT2 - Count on a tree II You are given a tree with N nodes. The tree nodes are numbered from 1 to N ...

  6. TSP+Floyd BestCoder Round #52 (div.2) 1002 Victor and Machine

    题目传送门 题意:有中文版的 分析:(出题人的解题报告)我们首先需要预处理出任意两个国家之间的最短距离,因为数据范围很小,所以直接用Floyd就行了.之后,我们用f[S][i]表示访问国家的情况为S, ...

  7. 求N!尾数有多少个0。

    方法一:假设N!=K*10M,K不能被10整除,那么N!尾数就有M个0.再对N!进行质因子分解:N!=2x*3y*5z...由于10=2*5,即每一对2和5相乘都可以得到1个0,所以M只与指数x.z有 ...

  8. 转 php中$_request与$_post、$_get的区别

    php中有$_REQUEST与$_POST.$_GET用于接受表单数据,当时他们有何种区别,什么时候用那种最好. 一.$_REQUEST与$_POST.$_GET的区别和特点 $_REQUEST[]具 ...

  9. 移动web开发基础(一)——像素

    这篇文章要弄清楚2个问题:一.什么是逻辑像素和物理像素:二.这两者有什么关系. 对于问题一,先抛出两个概念.我们经常使用的px就是逻辑像素,是浏览器使用的抽象单位:物理像素又和dp/pt(设备无关像素 ...

  10. Android基础夯实--重温动画(三)之初识Property Animation

    每个人都有一定的理想,这种理想决定着他的努力和判断的方向.就在这个意义上,我从来不把安逸和快乐看作生活目的的本身--这种伦理基础,我叫它猪栏的理想.--爱因斯坦 一.摘要 Property Anima ...