js 技巧 (九)按键JS
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的更多相关文章
- JS技巧
2016-08-09 200多个js技巧代码(Down) word下载 200多个js技巧代码 目录 1.文本框焦点问题... 6 2.网页按钮的特殊颜色... 6 3.鼠标移入移出时颜色变化... ...
- Atitit.android js 的键盘按键检测Back键Home键和Menu键事件
Atitit.android js 的键盘按键检测Back键Home键和Menu键事件 1. onKeyDown @Override public boolean onKeyDown(int keyC ...
- js获取每个按键的ASCII值
通过js绑定键盘按下事件onkeydown获取每个按键的ascII值. js获取每个按键的ascii值 <script language="javascript"> / ...
- Bootstrap入门(二十九)JS插件6:弹出框
Bootstrap入门(二十九)JS插件6:弹出框 加入小覆盖的内容,像在iPad上,用于存放非主要信息 弹出框是依赖于工具提示插件的,那它也和工具提示是一样的,是需要初始化才能够使用的 首先我们引入 ...
- Atitit.js的键盘按键事件捆绑and事件调度
Atitit.js的键盘按键事件捆绑and事件调度 1. Best的方法还是 objEvtMap[ id+evt ]=function(evt,element) 2. Event bind funct ...
- 提升开发幸福感的10条JS技巧
鱼头总结一些能够提高开发效率的JS技巧,这些技巧很实用,觉得挺好,想推荐给大家,所以有了这篇文章. 生成随机UID const genUid = () => { var length = 20 ...
- 你应该了解的25个JS技巧
目录 1. 类型检查小工具 2. 检查是否为空 3. 获取列表最后一项 4. 带有范围的随机数生成器 5. 随机 ID 生成器 6. 创建一个范围内的数字 7. 格式化 JSON 字符串,string ...
- JavaScript学习总结(十九)——使用js加载器动态加载外部Javascript文件
今天在网上找到了一个可以动态加载js文件的js加载器,具体代码如下: JsLoader.js 1 var MiniSite=new Object(); 2 /** 3 * 判断浏览器 4 */ 5 M ...
- C#使用技巧之调用JS脚本(转)
.创建个Winform项目. .在From1上增加一个文本框一个按钮. .在解决方案中创建一个test.js文件. test.js代码如下: function sayHello(str) { retu ...
- vue.js技巧小计
//删除数组索引方法01 del (index) { this.arr.splice(index ,1); } //删除数组索引方法01 del (index) { this.$delete(this ...
随机推荐
- 网易云MongoDB分片集群(Sharding)服务已上线
此文已由作者温正湖授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. MongoDB sharding cluster(分片集群)是MongoDB提供的数据在线水平扩展方案,包括 ...
- bzoj 2423: [HAOI2010]最长公共子序列【dp+计数】
设f[i][j]为a序列前i个字符和b序列前j个字符的最长公共子序列,转移很好说就是f[i][j]=max(f[i-1][j],f[i][j-1],f[i-1][j-1]+(a[i]==b[j])) ...
- bzoj 3677: [Apio2014]连珠线【树形dp】
参考:http://www.cnblogs.com/mmlz/p/4456547.html 枚举根,然后做树形dp,设f[i][1]为i是蓝线中点(蓝线一定是父子孙三代),f[i][0]为不是,转移很 ...
- LBP特征 学习笔记
这几天一直在做人脸识别的项目,有用到LBP特征,但是毫无头绪,师姐这几天也比较忙,没有时间来指导我,随自己找相应的介绍LBP的博文来看,现在总算有了一个大体的思路了,就写下来吧 注:参考博文: 目标检 ...
- CF1119F Niyaz and Small Degrees
题意 给你\(n\)个点的树,边有边权 问使得所有的点度数都小于等于\(x\)的最小删边的代价 \([x \in 0...n-1]\) 题解 首先对于每个\(x\) 可以有一个\(O(nlogn)\) ...
- 数位dp总结 之 从入门到模板
转发自WUST_WenHao巨巨的博客 基础篇 数位dp是一种计数用的dp,一般就是要统计一个区间[le,ri]内满足一些条件数的个数.所谓数位dp,字面意思就是在数位上进行dp咯.数位还算是比较好听 ...
- Mac OS X:在标题栏上显示目录完整路径
众所周知mac的finder是不带路径显示的,你进入某个文件夹只会显示当前文件夹的名字而已.虽然你可以在finder的菜单栏中点“显示”-“显示路径栏”把路径栏调出来,但是这样只会不必要的增加find ...
- jsp错误处理
jsp提供了很好的错误能力,除了在java代码中可以使用try语句,还可以指定一个特殊页面,当页面应用遇到未捕获的异常时,用户将看到一个精心设计的网页解释发生了什么,而不是一个用户无法理解的错误信息. ...
- VS打包后生成快捷方式:目标指向错误、Icon图标分辨率有误问题解决方案
1.目标指向错误: 在安装***.msi文件后,对快捷方式-->右键-->属性: 发现目标并非指exe文件. 于是我新建了一个快捷方式,将目标-->指向exe文件,位置Ctrl+v. ...
- Abp Framework中文文档上线
感谢 ABP框架中国小组 给我们带来的ABP中文翻译,Web+为方便广大学习爱好者随时查阅,现推出了Gitbook风格的在线阅读文档:http://www.webplus.org.cn/documen ...