javascript方法和技巧.docx
《javascript方法和技巧.docx》由会员分享,可在线阅读,更多相关《javascript方法和技巧.docx(42页珍藏版)》请在冰点文库上搜索。
javascript方法和技巧
1.oncontextmenu="window.event。
returnValue=false”将彻底屏蔽鼠标右键
〈tableborderoncontextmenu=return(false)〉〈td>no〈/table〉可用于Table
2。
取消选取、防止复制
3。
onpaste=”returnfalse”不准粘贴
4.oncopy="returnfalse;"oncut="returnfalse;”防止复制
5.6。
〈linkrel=”Bookmark”href=”favicon.ico”〉可以在收藏夹中显示出你的图标
7.disabled"〉关闭输入法
8。
永远都会带着框架
〈scriptlanguage="JavaScript”〉〈!
——
if(window==top)top。
location.href="frames。
htm";//frames.htm为框架网页
//——〉〈/script〉
9.防止被人frame
〈SCRIPTLANGUAGE=JAVASCRIPT〉<!
--
if(top.location!
=self。
location)top.location=self。
location;
//—->〈/SCRIPT〉
10.网页将不能被另存为
〈noscript>11。
〈inputtype=buttonvalue=查看网页源代码
onclick=”window。
location=”view—source:
”+”http:
//www.williamlong。
info""〉
12。
删除时确认
〈ahref="javascript:
if(confirm("确实要删除吗?
"))location=”boos.asp?
&areyou=删除&page=1”"〉删除
13。
取得控件的绝对位置
//Javascript
〈scriptlanguage="Javascript”〉
functiongetIE(e){
vart=e.offsetTop;
varl=e.offsetLeft;
while(e=e.offsetParent)
alert(”top=”+t+”/nleft="+l);
}
〈/script〉
//VBScript
〈scriptlanguage="VBScript”>〈!
-—
functiongetIE()
dimt,l,a,b
seta=document.all。
img1
t=document.all。
img1.offsetTop
l=document.all。
img1。
offsetLeft
whilea。
tagName<>”BODY”
seta=a。
offsetParent
t=t+a.offsetTop
l=l+a.offsetLeft
wend
msgbox"top=”&t&chr(13)&"left="&l,64,”得到控件的位置"
endfunction
-—〉
14。
光标是停在文本框文字的最后
functioncc()
{
vare=event.srcElement;
varr=e。
createTextRange();
r.moveStart(”character”,e。
value.length);
r.collapse(true);
r.select();
}
15。
判断上一页的来源
javascript:
document。
referrer
16。
最小化、最大化、关闭窗口
ADB880A6-D8FF—11CF—9377—00AA003B7A11”>
〈paramname=”Command”value=”Minimize"〉〈/object〉
〈objectid=hh2classid="clsid:
ADB880A6—D8FF-11CF-9377-00AA003B7A11”>
〈paramname=”Command”value=”Maximize”〉
adb880a6-d8ff-11cf—9377-00aa003b7a11"〉
〈inputtype=buttonvalue=最小化onclick=hh1.Click()>
Click()〉
本例适用于IE
17.屏蔽功能键Shift,Alt,Ctrl
〈script>
functionlook(){
if(event.shiftKey)
alert(”禁止按Shift键!
”);//可以换成ALT CTRL
}
document.onkeydown=look;
〈/script〉
18。
网页不会被缓存
〈METAHTTP-EQUIV="Cache-Control”CONTENT=”no-cache,must-revalidate”>
21:
57GMT”>
或者19。
怎样让表单没有凹凸感?
1solid#000000">
或
〈inputtype=textstyle="border—left:
none;border—right:
none;border-top:
none;border-bottom:
1solid#000000”〉
20。
〈div〉〈div〉(division)用来定义大段的页面元素,会产生转行
用来定义同一行内的元素,跟〈div>的唯一区别是不产生转行
〈layer>是ns的标记,ie不支持,相当于
21.让弹出窗口总是在最上面:
22。
不要滚动条?
让竖条没有:
〈bodystyle=”overflow:
scroll;overflow—y:
hidden”>
〈/body〉
让横条没有:
scroll;overflow—x:
hidden"〉
〈/body〉
两个都去掉?
更简单了
〈/body>
23。
怎样去掉图片链接点击后,图片周围的虚线?
24。
电子邮件处理提交表单
****@***。
com”enctype=”text/plain"〉
25。
在打开的子窗口刷新父窗口的代码里如何写?
window。
opener.location。
reload()
26.如何设定打开页面的大小
〈bodyonload=”top。
resizeTo(300,200);">
打开页面的位置moveBy(300,200);">
27.在页面中如何加入不是满铺的背景图片,拉动页面时背景图不动
body
{background—image:
url(/blog/logo。
gif);background-repeat:
no—repeat;
background-position:
center;background-attachment:
fixed}
28。
检查一段字符串是否全由数字组成
〈scriptlanguage=”Javascript"><!
——
functioncheckNum(str){returnstr。
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(”含有汉字");
elsealert(”全是字符”);
31.TEXTAREA自适应文字行数的多少
posHeight=this。
scrollHeight”〉
32。
日期减去天数等于第二个日期
〈scriptlanguage=Javascript>
functioncc(dd,dadd)
{
//可以加上错误处理
vara=newDate(dd)
a=a.valueOf()
a=a-dadd*24*60*60*1000
a=newDate(a)
alert(a。
getFullYear()+”年”+(a。
getMonth()+1)+"月"+a.getDate()+"日”)
}
cc(”12/23/2002”,2)
33。
选择了哪一个Radio
〈scriptlanguage=”vbscript”>
functioncheckme()
foreachobinradio1
ifob.checkedthenwindow。
alertob.value
next
endfunction
〈INPUTname=”radio1”type=”radio"value="style"checked〉Style
〈INPUTname=”radio1"type="radio”value=”barcode”>Barcode
〈INPUTtype="button"value="check”onclick=”checkme()”〉
34。
脚本永不出错
<!
-—Hide
functionkillErrors(){
returntrue;
}
window。
onerror=killErrors;
//-->
35.ENTER键可以让光标移到下一个输入框
keyCode==13)event.keyCode=9">
36。
检测某个网站的链接速度:
把如下代码加入
〈scriptlanguage=Javascript〉
tim=1
setInterval("tim++”,100)
b=1
varautourl=newArray()
autourl[1]=””
autourl[2]=”javacool。
3322。
net”
autourl[3]=”。
cn"
autourl[4]=”www。
nuaa.edu。
cn”
autourl[5]=”"
functionbutt(){
document。
write(”for(vari=1;idocument.write("。
...。
>”=》name=url”+i+"size=40〉=》〈inputtype=buttonvalue=GO
onclick=window。
open(this.form。
url"+i+”。
value)>〈br〉”)
document。
write("〈inputtype=submitvalue=刷新>
}
butt()
functionauto(url)
else
b++
}
functionrun(){for(vari=1;i〈autourl.length;i++)document。
write(”//"+autourl+”/”+Math.random()+"width=1height=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.页面进入和退出的特效
进入页面〈metahttp—equiv=”Page-Enter"content="revealTrans(duration=x,transition=y)”〉
推出页面〈metahttp—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.在规定时间内跳转
〈METAhttp—equiv=V=”REFRESH"content="5;URL=http:
//www。
williamlong。
info"〉
40.网页是否被检索
其中属性值有以下一些:
属性值为"all”:
文件将被检索,且页上链接可被查询;
属性值为”none":
文件不被检索,而且不查询页上的链接;
属性值为"index":
文件将被检索;
属性值为”follow”:
查询页上的链接;
属性值为"noindex”:
文件不检索,但可被查询链接;
属性值为”nofollow":
文件不被检索,但可查询页上的链接.
最大化窗口?
〈scriptlanguage=”JavaScript">
〈!
——
self.moveTo(0,0)
self.resizeTo(screen。
availWidth,screen。
availHeight)
//—-〉
解决问题:
由于层与下拉框之间的优先级是:
下拉框〉层,因此在显示的时候,会因为优先级的次序而会出现如上问题.(如果几个元素都是层的话,我们可以通过层的z—index属性来设置)解决办法就是:
给层中放一个优先级比下拉框更高的元素(iframe),从而解决此问题!
具体解决代码如下:
〈divid=”menu"style=”position:
absolute;visibility:
hidden;top:
20px;left:
20px;width:
100px;height:
200px;background—color:
#6699cc;"〉
〈table>
〈tr〉
〈/tr〉 〈tr〉 | | 〈td>item3〈/td〉
item4〈/td〉〈/tr> 〈tr> | |
false”style="position:
absolute;visibility:
inherit;top:
0px;left:
0px;width:
100px;height:
200px;z—index:
-1;filter='progid:
DXImageTransform。
Microsoft.Alpha(style=0,opacity=0)’;”〉〈/iframe>
〈ahref="#"onclick="document。
getElementById(’menu')。
style.visibility=’visible'”>menu
〈select>〈option>Aformselectionlist〈/option〉〈/select>
输入框也可以做的很漂亮了
〈divalign=”center"〉〈inputtype="hidden"name=”hao”value="yes”>
外向数:
〈input
name=answer
style=”color:
rgb(255,0,0);border-left:
mediumnone;border-right:
mediumnone;border-top:
mediumnone;border—bottom:
1pxsolidrgb(192,192,192)”〉
没回答的题数:
name=unanswerid=”unanswer"
style=”color:
rgb(255,0,0);border-left:
mediumnone;border—right:
mediumnone;border-top:
mediumnone;border—bottom:
1pxsolidrgb(192,192,192)”>
〈br〉
总得分:
name=scoreid=”score”
style=”color:
rgb(255,0,0);border—left:
mediumnone;border—right:
mediumnone;border—top:
mediumnone;border-bottom:
1pxsolidrgb(192,192,192)"〉
结论:
name=xgjgid="xgjg"
style=”color:
rgb(255,0,0);border-left:
mediumnone;border—right:
mediumnone;border-top:
mediumnone;border—bottom:
1pxsolidrgb(192,192,192)"〉
〈br〉
〈br〉
宋体;FONT—SIZE:
9pt”type=buttonvalue=查看结果name=”button”〉