javascript 四十條常用技巧大全
1. 將徹底屏蔽鼠標(biāo)右鍵
oncontextmenu=”window.event.returnValue=false” < table border oncontextmenu=return(false)>< td>no< /table> 可用于 Table
2. 取消選取、防止復(fù)制
<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防止復(fù)制
oncopy=”return false;” oncut=”return false;”
5. IE 地址欄前換成自己的圖標(biāo)
<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>
在文件的根目錄放進(jìn)去這個圖片,后綴修改成ico就可以了
6.可以在收藏夾中顯示出你的圖標(biāo)
<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.關(guān)閉輸入法
<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. 永遠(yuǎn)都會帶著框架
< script language=”JavaScript”>< !– if (window == top)top.location.href = “frames.htm”; //frames.htm 為框架網(wǎng)頁 // –>< /script>
9. 防止被人 frame
< SCRIPT LANGUAGE=JAVASCRIPT>< !– if (top.location != self.location)top.location=self.location; // –>< /SCRIPT>
10. 網(wǎng)頁將不能被另存為
< noscript>< iframe src=*.html>< /iframe>< /noscript>
11. < input type=button value=查看網(wǎng)頁源代碼
onclick=”window.location = “view-source:”+ “http://www.pconline.com.cn””>
12. 刪除時確認(rèn)
< 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. 光標(biāo)是停在文本框文字的最后
< 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. 最小化、最大化、關(guān)閉窗口
< 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=關(guān)閉 onclick=hh3.Click()> 本例適用于 IE
17.屏蔽功能鍵 Shift,Alt,Ctrl
< script> function look(){ if(event.shiftKey) alert(“禁止按 Shift 鍵!”); //可以換成 ALT CTRL } document.onkeydown=look; < /script>
18. 網(wǎng)頁不會被緩存
< 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>的區(qū)別?
< div>(division)用來定義大段的頁面元素,會產(chǎn)生轉(zhuǎn)行 < span>用來定義同一行內(nèi)的元素,跟< div>的唯一區(qū)別是不產(chǎn)生轉(zhuǎn)行 < layer>是 ns 的標(biāo)記,ie 不支持,相當(dāng)于< 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.怎樣去掉圖片鏈接點(diǎn)擊后,圖片周圍的虛線?
< 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.如何設(shè)定打開頁面的大小
< 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. 檢查一段字符串是否全由數(shù)字組成
< 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 自適應(yīng)文字行數(shù)的多少
< textarea rows=1 name=s1 cols=27 onpropertychange=”this.style.posHeight=this.scrollHeight”> < /textarea>
32. 日期減去天數(shù)等于第二個日期
< 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 鍵可以讓光標(biāo)移到下一個輸入框
<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. 檢測某個網(wǎng)站的鏈接速度:
把如下代碼加入< body>區(qū)域中:
< 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. 各種樣式的光標(biāo)
auto :標(biāo)準(zhǔn)光標(biāo)
default :標(biāo)準(zhǔn)箭頭
hand :手形光標(biāo)
wait :等待光標(biāo)
text :I 形光標(biāo)
vertical-text :水平 I 形光標(biāo)
no-drop :不可拖動光標(biāo)
not-allowed :無效光標(biāo)
help :?幫助光標(biāo)
all-scroll :三角方向標(biāo)
move :移動標(biāo)
crosshair :十字標(biāo)
e-resize
n-resize
nw-resize
w-resize
s-resize
se-resize
sw-resize
38. 頁面進(jìn)入和退出的特效
進(jìn)入頁面< meta http-equiv=”Page-Enter” content=”revealTrans(duration=x, transition=y)”>
推出頁面< meta http-equiv=”Page-Exit” content=”revealTrans(duration=x, transition=y)”>
這個是頁面被載入和調(diào)出時的一些特效。duration 表示特效的持續(xù)時間,以秒為單位。
transition 表示使用哪種特效,取值為
1-23:
0 矩形縮小
1 矩形擴(kuò)大
2 圓形縮小
3 圓形擴(kuò)大
4 下到上刷新
5 上到下刷新
6 左到右刷新
7 右到左刷新
8 豎百葉窗
9 橫百葉窗
10 錯位橫百葉窗
11 錯位豎百葉窗
12 點(diǎn)擴(kuò)散
13 左右到中間刷新
14 中間到左右刷新
15 中間到上下
16 上下到中間
17 右下到左上
18 右上到左下
19 左上到右下
20 左下到右上
21 橫條
22 豎條
23 以上 22 種隨機(jī)選擇一種
39. 在規(guī)定時間內(nèi)跳轉(zhuǎn)
< META http-equiv=V=”REFRESH” content=”5;URL=http://www.51js.com”>
40. 網(wǎng)頁是否被檢索
<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事件,讓頁面在接受到回車事件后,進(jìn)行Tab
鍵的功能,即只要把 event 的 keyCode 由 13 變?yōu)?9
Javascript 代碼如下:
<script language=”javascript” for=”document” event=”onkeydown”> <!– if(event.keyCode==13) event.keyCode=9; –> </script>
這樣的處理方式,可以實現(xiàn)焦點(diǎn)往下移動,但對于按鈕也起同樣的作用,一般的客戶在輸入完
資料以后,跳到按鈕后,最好能直接按”回車”進(jìn)行數(shù)據(jù)的提交.因此,對上面的方法要進(jìn)行一下
修改,應(yīng)該對于”提交”按鈕不進(jìn)行焦點(diǎn)轉(zhuǎn)移.而直接激活提交.
因此我對上面的代碼進(jìn)行了一個修改,即判斷事件的”源”,是否為提交按鈕,代碼如下:
<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 上的”重置”應(yīng)該要被執(zhí)行
判斷是否為空,是因為對于 HTML 上的”<a>鏈接”也應(yīng)該被執(zhí)行,這種情況發(fā)生的情況不多,可以使用”tabindex=-1″的方式來取消鏈接獲得焦點(diǎn)。
- JS常用函數(shù)和常用技巧小結(jié)
- node.js路徑處理方法以及絕對路徑詳解
- JavaScript中apply方法的應(yīng)用技巧小結(jié)
- Web性能優(yōu)化系列 10個提升JavaScript性能的技巧
- javascript函數(shù)中的3個高級技巧
- JavaScript中Array的實用操作技巧分享
- jsp編程常用技巧小結(jié)
- 41個Web開發(fā)者必須收藏的JavaScript實用技巧
- 每日十條JavaScript經(jīng)驗技巧(二)
- 每日十條JavaScript經(jīng)驗技巧(一)
- 靜態(tài)頁面html中跳轉(zhuǎn)傳值的JS處理技巧
- 12個非常實用的JavaScript小技巧【推薦】
- JavaScript奇技淫巧44招【實用】
相關(guān)文章
js調(diào)試系列 源碼定位與調(diào)試[基礎(chǔ)篇]
如果看了1, 2兩篇,你對控制臺應(yīng)該有一個初步了解了,今天我們來個簡單的調(diào)試。昨天留的三個課后練習(xí),差不多就是今天要講的內(nèi)容2014-06-06JavaScript實現(xiàn)字符串截取的三個方法總結(jié)
在?JavaScript?中,可以使用?substr()、slice()?和?substring()?方法截取字符串。這篇文章就來通過一些示例和大家聊聊這些方法的具體操作,需要的可以參考一下2023-02-02GitHub上一些實用的JavaScript的文件壓縮解壓縮庫推薦
這篇文章主要介紹了GitHub上一些實用的JavaScript的文件壓縮解壓縮庫推薦,推薦的這幾個都是支持zip格式的,需要的朋友可以參考下2016-03-03微信小程序?qū)崙?zhàn)篇之購物車的實現(xiàn)代碼示例
本篇文章主要介紹了微信小程序?qū)崙?zhàn)篇之購物車的實現(xiàn)代碼示例,詳細(xì)的介紹了購物車的功能實現(xiàn),具有一定的參考價值,有興趣的可以了解一下2017-11-11詳解template標(biāo)簽用法(含vue中的用法總結(jié))
這篇文章主要介紹了template標(biāo)簽用法(含vue中的用法總結(jié)),本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧2021-01-01JS中關(guān)于事件處理函數(shù)名后面是否帶括號的問題
JS中的事件處理(事件綁定)就是讓某種或某些事件觸發(fā)某些活動。有兩種常見的形式,分別是DOM Level 0 和DOM Level 2。今天總結(jié)一個關(guān)于事件處理程序的小細(xì)節(jié)。感興趣的朋友一起學(xué)習(xí)吧2016-11-11