javascript 四十条常用技巧大全


Posted in Javascript onSeptember 09, 2016

1. 将彻底屏蔽鼠标右键

oncontextmenu=”window.event.returnValue=false”
< table border oncontextmenu=return(false)>< td>no< /table> 可用于 Table

2. 取消选取、防止复制

<span class="tag" style="color:rgb(0,0,128)">< <span class="attribute" style="color:rgb(0,128,128)">body</span> <span class="attribute" style="color:rgb(0,128,128)">onselectstart</span>=<span class="value" style="color:rgb(221,17,68)">”return</span> <span class="attribute" style="color:rgb(0,128,128)">false</span>”></span>

3.JS不允许粘贴

onpaste=”return false”

4. JS防止复制

oncopy=”return false;” oncut=”return false;”

5. IE 地址栏前换成自己的图标

<span class="tag" style="color:rgb(0,0,128)">< <span class="attribute" style="color:rgb(0,128,128)">link</span> <span class="attribute" style="color:rgb(0,128,128)">rel</span>=<span class="value" style="color:rgb(221,17,68)">”Shortcut</span> <span class="attribute" style="color:rgb(0,128,128)">Icon</span>” <span class="attribute" style="color:rgb(0,128,128)">href</span>=<span class="value" style="color:rgb(221,17,68)">”favicon.ico”</span>></span>

在文件的根目录放进去这个图片,后缀修改成ico就可以了

6.可以在收藏夹中显示出你的图标

<span class="tag" style="color:rgb(0,0,128)">< <span class="attribute" style="color:rgb(0,128,128)">link</span> <span class="attribute" style="color:rgb(0,128,128)">rel</span>=<span class="value" style="color:rgb(221,17,68)">”Bookmark”</span> <span class="attribute" style="color:rgb(0,128,128)">href</span>=<span class="value" style="color:rgb(221,17,68)">”favicon.ico”</span>></span>

7.关闭输入法

<span class="tag" style="color:rgb(0,0,128)">< <span class="attribute" style="color:rgb(0,128,128)">input</span> <span class="attribute" style="color:rgb(0,128,128)">style</span>=<span class="value" style="color:rgb(221,17,68)">”ime-mode:disabled”</span>></span>

8. 永远都会带着框架

< script language=”JavaScript”>< !?
if (window == top)top.location.href = “frames.htm”; //frames.htm 为框架网页
// ?>< /script>

9. 防止被人 frame

< SCRIPT LANGUAGE=JAVASCRIPT>< !?
if (top.location != self.location)top.location=self.location;
// ?>< /SCRIPT>

10. 网页将不能被另存为

< noscript>< iframe src=*.html>< /iframe>< /noscript>

11. < input type=button value=查看网页源代码

onclick=”window.location = “view-source:”+ “http://www.pconline.com.cn””>

12. 删除时确认

< a href=”javascript:if(confirm(” 确 实 要 删 除 吗 ?”))location=”boos.asp?&areyou= 删 除
&page=1″”>删除< /a>

13. 取得控件的绝对位置

//Javascript
< script language=”Javascript”>
function getIE(e){
var t=e.offsetTop;
var l=e.offsetLeft;
while(e=e.offsetParent){
t+=e.offsetTop;
l+=e.offsetLeft;
}
alert(“top=”+t+”/nleft=”+l);
}
< /script>
//VBScript
< script language=”VBScript”>< !?
function getIE()
dim t,l,a,b
set a=document.all.img1
t=document.all.img1.offsetTop
l=document.all.img1.offsetLeft
while a.tagName< >”BODY”
set a = a.offsetParent
t=t+a.offsetTop
l=l+a.offsetLeft
wend
msgbox “top=”&t&chr(13)&”left=”&l,64,”得到控件的位置”
end function
?>< /script>

14. 光标是停在文本框文字的最后

< script language=”javascript”>
function cc()
{
var e = event.srcElement;
var r =e.createTextRange();
r.moveStart(“character”,e.value.length);
r.collapse(true);
r.select();
}
< /script>
< input type=text name=text1 value=”123″ onfocus=”cc()”>

15. 判断上一页的来源

javascript:
document.referrer

16. 最小化、最大化、关闭窗口

< object id=hh1 classid=”clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11″>
< param name=”Command” value=”Minimize”>< /object>
< object id=hh2 classid=”clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11″>
< param name=”Command” value=”Maximize”>< /object>
< OBJECT id=hh3 classid=”clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11″>
< PARAM NAME=”Command” VALUE=”Close”>< /OBJECT>
< input type=button value=最小化 onclick=hh1.Click()>
< input type=button value=最大化 onclick=hh2.Click()>
< input type=button value=关闭 onclick=hh3.Click()> 
本例适用于 IE

17.屏蔽功能键 Shift,Alt,Ctrl

< script>
function look(){
if(event.shiftKey)
alert(“禁止按 Shift 键!”); //可以换成 ALT CTRL
}
document.onkeydown=look;
< /script>

18. 网页不会被缓存

< META HTTP-EQUIV=”pragma” CONTENT=”no-cache”>
< META HTTP-EQUIV=”Cache-Control” CONTENT=”no-cache, must-revalidate”>
< META HTTP-EQUIV=”expires” CONTENT=”Wed, 26 Feb 1997 08:21:57 GMT”>
或者< META HTTP-EQUIV=”expires” CONTENT=”0″>

19.怎样让表单没有凹凸感?

< input type=text style=”border:1 solid #000000″>

< input type=text style=”border-left:none; border-right:none; border-top:none; border-bottom:
solid #000000″>< /textarea>

20.< div>< span>&< layer>的区别?

< div>(division)用来定义大段的页面元素,会产生转行
< span>用来定义同一行内的元素,跟< div>的唯一区别是不产生转行
< layer>是 ns 的标记,ie 不支持,相当于< div>

21.让弹出窗口总是在最上面:

<span class="tag" style="color:rgb(0,0,128)">< <span class="attribute" style="color:rgb(0,128,128)">body</span> <span class="attribute" style="color:rgb(0,128,128)">onblur</span>=<span class="value" style="color:rgb(221,17,68)">”this.focus();”</span>></span>

22.不要滚动条?

让竖条没有:

<span class="tag" style="color:rgb(0,0,128)">< <span class="attribute" style="color:rgb(0,128,128)">body</span> <span class="attribute" style="color:rgb(0,128,128)">style</span>=<span class="value" style="color:rgb(221,17,68)">”overflow:scroll;overflow-y:hidden”</span>></span> 
<span class="tag" style="color:rgb(0,0,128)">< /<span class="attribute" style="color:rgb(0,128,128)">body</span>></span>

让横条没有:

<span class="tag" style="color:rgb(0,0,128)">< <span class="attribute" style="color:rgb(0,128,128)">body</span> <span class="attribute" style="color:rgb(0,128,128)">style</span>=<span class="value" style="color:rgb(221,17,68)">”overflow:scroll;overflow-x:hidden”</span>></span> 
<span class="tag" style="color:rgb(0,0,128)">< /<span class="attribute" style="color:rgb(0,128,128)">body</span>></span>

两个都去掉?更简单了

<span class="tag" style="color:rgb(0,0,128)">< <span class="attribute" style="color:rgb(0,128,128)">body</span> <span class="attribute" style="color:rgb(0,128,128)">scroll</span>=<span class="value" style="color:rgb(221,17,68)">”no”</span>></span> 
<span class="tag" style="color:rgb(0,0,128)">< /<span class="attribute" style="color:rgb(0,128,128)">body</span>></span>

23.怎样去掉图片链接点击后,图片周围的虚线?

< a href=”#” onFocus=”this.blur()”>< img src=”logo.jpg” border=0>< /a>

24.电子邮件处理提交表单

< form name=”form1″ method=”post” action=”mailto:****@***.com” enctype=”text/plain”>
< input type=submit>
< /form>

25.在打开的子窗口刷新父窗口的代码里如何写?

window.opener.location.re<span class="operator"><span class="keyword" style="font-weight:bold">load</span>()</span>

26.如何设定打开页面的大小

< body onload=”top.resizeTo(300,200);”>

打开页面的位置< body onload=”top.moveBy(300,200);”>

27.在页面中如何加入不是满铺的背景图片,拉动页面时背景图不动

< STYLE>
body
{background-image:none; background-repeat:no-repeat;
background-position:center;background-attachment: fixed}
< /STYLE>

28. 检查一段字符串是否全由数字组成

< script language=”Javascript”>< !?
function checkNum(str){return str.match(//D/)==null}
alert(checkNum(“1232142141”))
alert(checkNum(“123214214a1”))
// ?>< /script>

29. 获得一个窗口的大小

document.body.clientWidth; document.body.clientHeight

30. 怎么判断是否是字符

if (/[^/x00-/xff]/g.test(s)) alert(“含有汉字”);
else alert(“全是字符”);

31.TEXTAREA 自适应文字行数的多少

< textarea rows=1 name=s1 cols=27 onpropertychange=”this.style.posHeight=this.scrollHeight”>
< /textarea>

32. 日期减去天数等于第二个日期

< script language=Javascript>
function cc(dd,dadd)
{
//可以加上错误处理
var a = new Date(dd)
a = a.valueOf()
a = a ? dadd * 24 * 60 * 60 * 1000
a = new Date(a)
alert(a.getFullYear() + “年” + (a.getMonth() + 1) + “月” + a.getDate() + “日”)
}
cc(“12/23/2002”,2)
< /script>

33. 选择了哪一个 Radio

< HTML>< script language=”vbscript”>
function checkme()
for each ob in radio1
if ob.checked then window.alert ob.value
next
end function
< /script>< BODY>
< INPUT name=”radio1″ type=”radio” value=”style” checked>Style
< INPUT name=”radio1″ type=”radio” value=”barcode”>Barcode
< INPUT type=”button” value=”check” onclick=”checkme()”>
< /BODY>< /HTML>

34. 脚本永不出错

< SCRIPT LANGUAGE=”JavaScript”>
< !? Hide
function killErrors() {
return true;
}
window.onerror = killErrors;
// ?>
< /SCRIPT>

35. ENTER 键可以让光标移到下一个输入框

<span class="tag" style="color:rgb(0,0,128)">< <span class="attribute" style="color:rgb(0,128,128)">input</span> <span class="attribute" style="color:rgb(0,128,128)">onkeydown</span>=<span class="value" style="color:rgb(221,17,68)">”if(event.keyCode==13)event.keyCode=9″</span>></span>

36. 检测某个网站的链接速度:

把如下代码加入< body>区域中:

< script language=Javascript>
tim=1
setInterval(“tim++”,100)
b=1
var autourl=new Array()
autourl[1]=”www.njcatv.net”
autourl[2]=”javacool.3322.net”
autourl[3]=”www.sina.com.cn”
autourl[4]=”www.nuaa.edu.cn”
autourl[5]=”www.cctv.com”
function butt(){
document.write(“< form name=autof>”)
for(var i=1;i< autourl.length;i++)
document.write(“< input type=text name=txt”+i+” size=10 value=测试中……> =》< input
type=text
name=url”+i+” size=40> =》< input type=button value=GO
onclick=window.open(this.form.url”+i+”.value)>
“)
document.write(“< input type=submit value=刷新>< /form>”)
}
butt()
function auto(url){
document.forms[0][“url”+b].value=url
if(tim>200)
{document.forms[0][“txt”+b].value=”链接超时”}
else
{document.forms[0][“txt”+b].value=”时间”+tim/10+”秒”}
b++
}
function run(){for(var i=1;i< autourl.length;i++)document.write(“< img
src=http://”+autourl+”/”+Math.random()+”
width=1 height=1
onerror=auto(“http://”+autourl+””)>”)}
run()< /script>

37. 各种样式的光标

auto :标准光标

default :标准箭头

hand :手形光标

wait :等待光标

text :I 形光标

vertical-text :水平 I 形光标

no-drop :不可拖动光标

not-allowed :无效光标

help :?帮助光标

all-scroll :三角方向标

move :移动标

crosshair :十字标

e-resize

n-resize

nw-resize

w-resize

s-resize

se-resize

sw-resize

38. 页面进入和退出的特效

进入页面< meta http-equiv=”Page-Enter” content=”revealTrans(duration=x, transition=y)”>

推出页面< meta http-equiv=”Page-Exit” content=”revealTrans(duration=x, transition=y)”>

这个是页面被载入和调出时的一些特效。duration 表示特效的持续时间,以秒为单位。

transition 表示使用哪种特效,取值为

1-23:

0 矩形缩小

1 矩形扩大

2 圆形缩小

3 圆形扩大

4 下到上刷新

5 上到下刷新

6 左到右刷新

7 右到左刷新

8 竖百叶窗

9 横百叶窗

10 错位横百叶窗

11 错位竖百叶窗

12 点扩散

13 左右到中间刷新

14 中间到左右刷新

15 中间到上下

16 上下到中间

17 右下到左上

18 右上到左下

19 左上到右下

20 左下到右上

21 横条

22 竖条

23 以上 22 种随机选择一种

39. 在规定时间内跳转

< META http-equiv=V=”REFRESH” content=”5;URL=http://www.51js.com”>

40. 网页是否被检索

<span class="tag" style="color:rgb(0,0,128)">< <span class="attribute" style="color:rgb(0,128,128)">meta</span> <span class="attribute" style="color:rgb(0,128,128)">name</span>=<span class="value" style="color:rgb(221,17,68)">”ROBOTS”</span> <span class="attribute" style="color:rgb(0,128,128)">content</span>=<span class="value" style="color:rgb(221,17,68)">”属性值”</span>></span>

其中属性值有以下一些:

属性值为”all”: 文件将被检索,且页上链接可被查询;

属性值为”none”: 文件不被检索,而且不查询页上的链接;

属性值为”index”: 文件将被检索;

属性值为”follow”: 查询页上的链接;

属性值为”noindex”: 文件不检索,但可被查询链接;

属性值为”nofollow”: 文件不被检索,但可查询页上的链接。

41. 回车

用客户端脚本在页面添加document 的onkeydown事件,让页面在接受到回车事件后,进行Tab

键的功能,即只要把 event 的 keyCode 由 13 变为 9

Javascript 代码如下:

<script language=”javascript” for=”document” event=”onkeydown”>
<!?
if(event.keyCode==13)
event.keyCode=9;
?>
</script>

这样的处理方式,可以实现焦点往下移动,但对于按钮也起同样的作用,一般的客户在输入完

资料以后,跳到按钮后,最好能直接按”回车”进行数据的提交.因此,对上面的方法要进行一下

修改,应该对于”提交”按钮不进行焦点转移.而直接激活提交.

因此我对上面的代码进行了一个修改,即判断事件的”源”,是否为提交按钮,代码如下:

<script language=”javascript” for=”document” event=”onkeydown”>
<!?
if(event.keyCode==13 && event.srcElement.type!='button' &&
event.srcElement.type!='submit' && event.srcElement.type!='reset' &&
event.srcElement.type!='textarea' && event.srcElement.type!=”)
event.keyCode=9;
?>
</script>

判断是否为 button, 是因为在 HTML 上会有 type=”button”

判断是否为 submit,是因为 HTML 上会有 type=”submit”

判断是否为 reset,是因为 HTML 上的”重置”应该要被执行

判断是否为空,是因为对于 HTML 上的”<a>链接”也应该被执行,这种情况发生的情况不多,可以使用”tabindex=-1″的方式来取消链接获得焦点。

Javascript 相关文章推荐
js jquery做的图片连续滚动代码
Jan 06 Javascript
弹出层之1:JQuery.Boxy (一) 使用介绍
Oct 06 Javascript
jquery实现类似淘宝星星评分功能实例
Sep 12 Javascript
node.js中的socket.io的广播消息
Dec 15 Javascript
深入理解JavaScript系列(30):设计模式之外观模式详解
Mar 03 Javascript
基于JavaScript的操作系统你听说过吗?
Jan 28 Javascript
JS &amp; JQuery 动态添加 select option
Jun 08 Javascript
Java框架SSH结合Easyui控件实现省市县三级联动示例解析
Jun 12 Javascript
js 弹出虚拟键盘修改密码的简单实例
Oct 10 Javascript
JavaScript面向对象分层思维全面解析
Nov 22 Javascript
JS实现利用两个队列表示一个栈的方法
Dec 13 Javascript
jQuery操作元素的内容和样式完整实例分析
Jan 10 jQuery
前端弹出对话框 js实现ajax交互
Sep 09 #Javascript
Boostrap基础教程之JavaScript插件篇
Sep 08 #Javascript
jQuery实现邮箱下拉列表自动补全功能
Sep 08 #Javascript
JS图片放大效果简单实现代码
Sep 08 #Javascript
Angularjs 实现一个幻灯片示例代码
Sep 08 #Javascript
利用Vue.js指令实现全选功能
Sep 08 #Javascript
AngularJS 实现JavaScript 动画效果详解
Sep 08 #Javascript
You might like
用PHP和ACCESS写聊天室(一)
2006/10/09 PHP
PHP几个数学计算的内部函数学习整理
2011/08/06 PHP
PHP 的异常处理、错误的抛出及回调函数等面向对象的错误处理方法
2012/12/07 PHP
全面了解PHP中的全局变量
2016/06/17 PHP
ecshop适应在PHP7的修改方法解决报错的实现
2016/11/01 PHP
php实现的XML操作(读取)封装类完整实例
2017/02/23 PHP
浅谈Laravel核心解读之Console内核
2018/12/02 PHP
PHP的mysqli_rollback()函数讲解
2019/01/23 PHP
详细讲解JS节点知识
2010/01/31 Javascript
12个非常有创意的JavaScript小游戏
2010/03/18 Javascript
深入理解JavaScript编程中的同步与异步机制
2015/06/24 Javascript
理解JavaScript表单的基础知识
2016/01/25 Javascript
AngularJS基础 ng-hide 指令用法及示例代码
2016/08/01 Javascript
JavaScript 闭包详细介绍
2016/09/28 Javascript
jquery UI Datepicker时间控件冲突问题解决
2016/12/16 Javascript
AngularJS动态菜单操作指令
2017/04/25 Javascript
Vue实现动态创建和删除数据的方法
2018/03/17 Javascript
原生JS实现动态加载js文件并在加载成功后执行回调函数的方法
2020/12/30 Javascript
NodeJS 将文件夹按照存放路径变成一个对应的JSON的方法
2018/10/17 NodeJs
javascript实现抢购倒计时程序
2019/08/26 Javascript
[02:14]DOTA2英雄基础教程 修补匠
2013/12/23 DOTA
[01:22:42]2014 DOTA2华西杯精英邀请赛 5 24 DK VS LGD
2014/05/26 DOTA
[01:07:19]DOTA2-DPC中国联赛 正赛 CDEC vs XG BO3 第一场 1月19日
2021/03/11 DOTA
Python最长公共子串算法实例
2015/03/07 Python
[原创]使用豆瓣提供的国内pypi源
2017/07/02 Python
Python中django学习心得
2017/12/06 Python
python之mock模块基本使用方法详解
2019/06/27 Python
python爬虫项目设置一个中断重连的程序的实现
2019/07/26 Python
python代码xml转txt实例
2020/03/10 Python
奥地利手表、香水、化妆品和珠宝购物网站:Brasty.at
2021/01/17 全球购物
教师自我剖析材料范文
2014/09/30 职场文书
班子个人四风问题整改措施
2014/10/04 职场文书
大学生思想道德自我评价
2015/03/09 职场文书
小学生家长意见
2015/06/03 职场文书
2016教师校本研修心得体会
2016/01/08 职场文书
python中的3种定义类方法
2021/11/27 Python