javascript常用命令

Javascript是什麼? Js是一種輕量級網絡腳本語言,用來向html頁面添加交互行為。它是一種解釋性語言即不需要預編譯就能執行。

Javascript能做什麼?①js可以講動態的變量放入html頁面。將js代碼放入html代碼中執行,如document.write(“<ht>”+name+”</h1>”) 就可以將name變量寫入html頁面中。②js可以監聽事件。如當頁面載入完成時或者用戶進行鼠標或者鍵盤操作時,onload,onmousemove,onfocus等事件。③js可以讀取且編輯html 的內容,document.getElementById(“nv”).innerHtml=”hello world”,即可改變id為nv組件的html代碼。④js可用來驗證數據合法性,前臺驗證(可以簡單被繞過)。If(document.getElementById(“name”).length>20) return false; 驗證文本長短。⑤js可用來檢測訪問者的瀏覽器,根據瀏覽器的不同來載入相應頁面,常用於瀏覽器的兼容性。navigator.userAgent.toLowerCase().indexOf("firefox") 就檢測是否是firefox瀏覽器。⑥js可用來創建cookie。document.cookie=name+"="+value+expires+"; path=/";

  如何在html代碼中嵌入js?①直接在html代碼中<script type="text/javascript">alert(“hello world”);</script>。②調用外部的js文件。<script src=out/helloworld.js></scirpt>,甚至可以調用第三方站點上的js(安全問題)。

常用的js代碼

1、 最簡單的alert(“hello world”),常用來發送一則消息提醒用戶。


2、 確認框,confirm(“確認要刪除嗎?”)

3、 提示框,prompt(“文本”,”默認值”)

4、 自定義js函數:
<html>
<head>
<script type="text/javascript">
function printHello()
{
alert("hello world");
}
</script>
</head>
<body>
<input type="button" value="click" onclick="printHello()">
</body>
</html>
5、頁面事件,js可以監視瀏覽器事件
Onclick事件,ondbclick(雙擊事件),onload(頁面載入事件),onUnload(關閉頁面事件),onfocus(獲取焦點事件),onblur(失去焦點事件),onchange(改變事件),onsubmit(提交表單事件),onmouseover(鼠標進入組件事件),onmouseOut(鼠標離開組件事件),onerror(加載文檔或者圖像失敗事件),onkeydown(某個鍵被按下事件)等。事件常被用在xss滲透中。
6、  字符串處理函數。①字符串長度 name.length即返回name的長度。②indexOf()計算字符串中指定字符第一次出現的位置。③match()用來查找字符串中特定的字符。④replace()替換字符串的一些字符。常用來過濾用戶輸入的內容。⑤toLowerCase()、toUpperCase()將字符串轉換為小、大寫。⑥concat()連接兩個字符串。⑦slice()提取字符串的片段。
7、  Date函數。var now =new Date();即可新建一個時間對象。①now.getTime()獲取從1970年到當前的毫秒數。②setFullYear()設置具體的日期。now.setFullYear(1990,1,1),即可把日期設置為1990年1月1日的當前時間。③toUTCString()將當前日期轉化為字符串。Sat, 27 Oct 2012 02:49:24 GMT。④getDay()獲取當前是一周中的第幾天。類似有getDate, getMonth, getFullYear, getHours, getMinutes(), getSeconds。⑤parse()返回從1970年1月1日到指定日期的毫秒數。
8、 Js Html DOM對象。①window:js中的頂層對象。Window表示瀏覽器窗口。每當<body>或者<frameset>標簽出現時,window對象就被創建。其實前面的一些函數都是這個對象內部的函數,alert,其實全寫是window.alert。open()用於打開一個新的瀏覽器窗口。瀏覽器窗口。②Navigator:包含客戶端瀏覽器的相關信息,前面判斷瀏覽器的類型就是用它。

appCodeName:返回瀏覽器代碼名;appMinorVersion返回瀏覽器次級版本;appName返回瀏覽器名稱;appVersion返回瀏覽器平臺和版本信息;userAgent返回user-agent頭部的值。③Screen包含客戶端顯示屏的信息。④History包含瀏覽器訪問歷史。history.length返回瀏覽器歷史記錄的url數量;history.back()加載上一個url(和點擊瀏覽器後退按鈕效果一樣);history.forward()加載下一個url;history.go()加載指定的url。⑤Location包含當前URL的信息。

hash返回從#開始的url;host返回主機名;href完整的url;pathname當前url的路徑部分;search返回從? 開始的url部分。Assign()加載指定的文檔,reload()重新加載當前文檔,replace()用新的文檔替換當前文檔。

 

有意思的例子

1、  記錄鍵盤動作:
document.onkeypress=function(){window.status+=String.fromCharCode(window.event.keyCode);}

該命令用於將用戶在瀏覽器中的鍵盤動作保存在window.status中。在瀏覽器中運行該命令,隨便在網頁中輸入寫字符,然後運行命令:window.status,可以看到status中保存瞭剛才的鍵盤動作。

2、  IE獲取剪切板內容(需要用戶允許):
<html>
<body>
<script>
alert(window.clipboardData.getData("text"));      
</script>
</body>
</html>

設置剪切板內容:
window.clipboardData.setData("text","set by javascript");
因為安全問題:firefox和chrome禁用clipboard。
3、  利用JS進行location重定向,釣魚網站。
Location.href=http:// www.aiwalls.com
4、  調用本地程序(IE)
<html>
<body>
<script> var o=new ActiveXObject(‘WScript.shell’); o.run(‘cmd.exe’); </script>
</body>
</html>
5、  操作本地文件。
<html>
<body>
<script>
var fso = new ActiveXObject("Scripting.FileSystemObject");
var file1 = fso.CreateTextFile("d:\\yeetrack.com.txt",true);
</script>
</body>
</html>
//讀取本地文件
<html>
<body>
<script>
if(typeof window.ActiveXObject != 'undefined')
{
var content = "";
try {

var fso = new ActiveXObject("Scripting.FileSystemObject");

var reader = fso.openTextFile("D:\\yeetrack.com.txt", 1);

while(!reader.AtEndofStream) {
content += reader.readline();
content += "\n";
}
reader.close();
alert(content);
}
catch (e) {
alert("Internet Explore read local file error: \n" + e);
}
}
</script>
</body>
</html>

發佈留言