JavaScript基础知识 2010年03月02日 1 创建脚本块 code goes here 2 隐藏脚本代码 document.write("Hello"); // --> 3 浏览器不支持的时候显示 Hello to the non-JavaScript browser. 4 链接外部脚本文件 5 注释脚本 // This is a comment document.write("Hello"); // This is a comment /* All of this is a comment */ 6 输出到浏览器 document.write("Hello"); 7 定义变量 var myVariable = "some value"; 8 字符串相加 var myString = "String1" + "String2"; 9 字符串搜索 var myVariable = "Hello there"; var therePlace = myVariable.search("there"); document.write(therePlace); // --> 10 字符串替换 thisVar.replace("Monday","Friday"); 11 格式化字串 var myVariable = "Hello there"; document.write(myVariable.big() + "
"); document.write(myVariable.blink() + "
"); document.write(myVariable.bold() + "
"); document.write(myVariable.fixed() + "
"); document.write(myVariable.fontcolor("red") + "
"); document.write(myVariable.fontsize("18pt") + "
"); document.write(myVariable.italics() + "
"); document.write(myVariable.small() + "
"); document.write(myVariable.strike() + "
"); document.write(myVariable.sub() + "
"); document.write(myVariable.sup() + "
"); document.write(myVariable.toLowerCase() + "
"); document.write(myVariable.toUpperCase() + "
"); var firstString = "My String"; var finalString = firstString.bold().toLowerCase().fontcolor("red"); // --> 12 创建数组 var myArray = new Array(5); myArray[0] = "First Entry"; myArray[1] = "Second Entry"; myArray[2] = "Third Entry"; myArray[3] = "Fourth Entry"; myArray[4] = "Fifth Entry"; var anotherArray = new Array("First Entry","Second Entry","Third Entry","Fourth Entry","Fifth Entry"); // --> 13 数组排序 var myArray = new Array(5); myArray[0] = "z"; myArray[1] = "c"; myArray[2] = "d"; myArray[3] = "a"; myArray[4] = "q"; document.write(myArray.sort()); // --> 14 分割字符串 var myVariable = "a,b,c,d"; var stringArray = myVariable.split(","); document.write(stringArray[0]); document.write(stringArray[1]); document.write(stringArray[2]); document.write(stringArray[3]); // --> 15 弹出警告信息 window.alert("Hello"); // --> 16 弹出确认框 var result = window.confirm("Click OK to continue"); // --> 17 定义函数 function multiple(number1,number2) { var result = number1 * number2; return result; } // --> 18 调用JS函数 Link text Link text 19 在页面加载完成后执行函数 Body of the page 20 条件判断 var userChoice = window.confirm("Choose OK or Cancel"); var result = (userChoice == true) ? "OK" : "Cancel"; document.write(result); // --> 21 指定次数循环 var myArray = new Array(3); myArray[0] = "Item 0"; myArray[1] = "Item 1"; myArray[2] = "Item 2"; for (i = 0; i document.write(myArray + "
"); } // --> 22 设定将来执行 function hello() { window.alert("Hello"); } window.setTimeout("hello()",5000); // --> 23 定时执行函数 function hello() { window.alert("Hello"); window.setTimeout("hello()",5000); } window.setTimeout("hello()",5000); // --> 24 取消定时执行 function hello() { window.alert("Hello"); } var myTimeout = window.setTimeout("hello()",5000); window.clearTimeout(myTimeout); // --> 25 在页面卸载时候执行函数 Body of the page 26 访问对象 var myURL = document.URL; window.alert(myURL); 27 动态输出HTML document.write("Here's some information about this :"); document.write(""); document.write("Referring : " + document.referrer + ""); document.write(": " + + ""); document.write("URL: " + document.URL + ""); document.write(""); 28 输出换行 document.writeln("a"); document.writeln("b"); 29 输出日期 var thisDate = new Date(); document.write(thisDate.toString()); 30 指定日期的时区 var myOffset = -2; var currentDate = new Date(); var userOffset = currentDate.getTimezoneOffset()/60; var timeZoneDifference = userOffset - myOffset; currentDate.setHours(currentDate.getHours() + timeZoneDifference); document.write("The time and date in Central Europe is: " + currentDate.toLocaleString()); 31 设置日期输出格式 var thisDate = new Date(); var thisTimeString = thisDate.getHours() + ":" + thisDate.getMinutes(); var thisDateString = thisDate.getFullYear() + "/" + thisDate.getMonth() + "/" + thisDate.getDate(); document.write(thisTimeString + " on " + thisDateString); 32 读取URL参数 var urlParts = document.URL.split("?"); var parameterParts = urlParts[1].split("&"); for (i = 0; i var pairParts = parameterParts.split("="); var pairName = pairParts[0]; var pairValue = pairParts[1]; document.write(pairName + " :" +pairValue ); } 33 打开一个新的对象 function newDocument() { document.open(); document.write("This is a New "); document.close(); } 34 页面跳转 window.location = ":void(0);"; 35 添加网页加载进度窗口 var placeHolder = window.open('holder.html','placeholder','width=200,height=200'); The Main Page This is the main page 36 读取图像属性 Width 37 动态加载图像 myImage = new Image; myImage.src = "Tellers1.jpg"; 38 简单的图像替换 rollImage = new Image; rollImage.src = "rollImage1.jpg"; defaultImage = new Image; defaultImage.src = "image1.jpg"; οnmοuseοut="document.myImage.src = defaultImage.src;"> 39 随机显示图像 var imageList = new Array; imageList[0] = "image1.jpg"; imageList[1] = "image2.jpg"; imageList[2] = "image3.jpg"; imageList[3] = "image4.jpg"; var imageChoice = Math.floor(Math.random() * imageList.length); document.write(''); 40 函数实现的图像替换 var source = 0; var replacement = 1; function createRollOver(originalImage,replacementImage) { var imageArray = new Array; imageArray[source] = new Image; imageArray[source].src = originalImage; imageArray[replacement] = new Image; imageArray[replacement].src = replacementImage; return imageArray; } var rollImage1 = createRollOver("image1.jpg","rollImage1.jpg"); οnmοuseοut="document.myImage1.src = rollImage1[source].src;"> 41 创建幻灯片 var imageList = new Array; imageList[0] = new Image; imageList[0].src = "image1.jpg"; imageList[1] = new Image; imageList[1].src = "image2.jpg"; imageList[2] = new Image; imageList[2].src = "image3.jpg"; imageList[3] = new Image; imageList[3].src = "image4.jpg"; function slideShow(imageNumber) { document.slideShow.src = imageList[imageNumber].src; imageNumber += 1; if (imageNumber window.setTimeout("slideShow(" + imageNumber + ")",3000); } } 42 随机广告图片 var imageList = new Array; imageList[0] = "image1.jpg"; imageList[1] = "image2.jpg"; imageList[2] = "image3.jpg"; imageList[3] = "image4.jpg"; var urlList = new Array; urlList[0] = "http://some.host/"; urlList[1] = "http://another.host/"; urlList[2] = "http://somewhere.else/"; urlList[3] = "http://right.here/"; var imageChoice = Math.floor(Math.random() * imageList.length); document.write(' + imageList[imageChoice] + '">'); 43 表单构成 First Choice Second Choice 44 访问表单中的文本框内容 Check Text Field 45 动态复制文本框内容 Enter some Text: Copy Text: Copy Text Field 46 侦测文本框的变化 Enter some Text: 47 访问选中的Select 1 2 3 Check Selection List 48 动态增加Select项 1 2 document.myForm.mySelect.length++; document.myForm.mySelect.options[document.myForm.mySelect.length - 1].text = "3"; document.myForm.mySelect.options[document.myForm.mySelect.length - 1].value = "Third Choice"; 49 验证表单字段 function checkField(field) { if (field.value == "") { window.alert("You must enter a value in the field"); field.focus(); } } Text Field:
50 验证Select项 function checkList(selection) { if (selection.length == 0) { window.alert("You must make a selection from the list."); return false; } return true; } 51 动态改变表单的action Username:
Password:
> > 52 使用图像按钮 Username:
Password:
53 表单数据的加密 function encrypt(item) { var newItem = ''; for (i=0; i newItem += item.charCodeAt(i) + '.'; } return newItem; } function encryptForm(myForm) { for (i=0; i myForm.elements.value = encrypt(myForm.elements.value); } } //--> Enter Some Text: 54 改变浏览器状态栏文字提示 window.status = "A new status message"; 55 弹出确认提示框 var userChoice = window.confirm("Click OK or Cancel"); if (userChoice) { document.write("You chose OK"); } else { document.write("You chose Cancel"); } 56 提示输入 var userName = window.prompt("Please Enter Your Name","Enter Your Name Here"); document.write("Your Name is " + userName); 57 打开一个新窗口 window.open(":void(0);","myNewWindow"); 58 设置新窗口的大小 window.open(":void(0);","myNewWindow",'height=300,width=300'); 59 设置新窗口的位置 window.open(":void(0);", "myNewWindow", 'height=300,width=300,left=200,screenX=200,top=100,screenY=100'); 60 是否显示工具栏和滚动栏 window.open(':void(0);', 'myNewWindow', 'height=100, width=400, top=0, left=0, toolbar=no, menubar=no, + 'scrollbars=no, resizable=no,location=n o, status=no'); 61 是否可以缩放新窗口的大小 window.open(':void(0);', 'myNewWindow', 'resizable=yes'); 62 加载一个新的文档到当前窗口 Open New Document 63 设置页面的滚动位置 if (document.all) { //如果是IE浏览器则使用scrollTop属性 document.body.scrollTop = 200; } else { //如果是NetScape浏览器则使用pageYOffset属性 window.pageYOffset = 200; } 64 在IE中打开全屏窗口 > Open a full-screen window 65 新窗口和父窗口的操作 //定义新窗口 var newWindow = window.open("128a.html","newWindow"); newWindow.close(); //在父窗口中关闭打开的新窗口 //在新窗口中关闭父窗口 //window.opener.close() 66 往新窗口中写内容 var newWindow = window.open("","newWindow"); newWindow.document.open(); newWindow.document.write("This is a new window"); newWIndow.document.close(); 67 加载页面到框架页面 在frame1中加载frame2中的页面 parent.frame2.document.location = "135b.html"; 68 在框架页面之间共享脚本 //如果在frame1中html文件中有个脚本 function doAlert() { window.alert("Frame 1 is loaded"); } 那么在frame2中可以如此调用该方法 This is frame 2. 69 数据公用 //可以在框架页面定义数据项,使得该数据可以被多个框架中的页面公用 var persistentVariable = "This is a persistent value"; //这样在frame1和frame2中都可以使用变量persistentVariable 70 框架代码库 根据以上的一些思路,我们可以使用一个隐藏的框架页面来作为整个框架集的代码库
"); document.write(myVariable.blink() + "
"); document.write(myVariable.bold() + "
"); document.write(myVariable.fixed() + "
"); document.write(myVariable.fontcolor("red") + "
"); document.write(myVariable.fontsize("18pt") + "
"); document.write(myVariable.italics() + "
"); document.write(myVariable.small() + "
"); document.write(myVariable.strike() + "
"); document.write(myVariable.sub() + "
"); document.write(myVariable.sup() + "
"); document.write(myVariable.toLowerCase() + "
"); document.write(myVariable.toUpperCase() + "
"); var firstString = "My String"; var finalString = firstString.bold().toLowerCase().fontcolor("red"); // --> 12 创建数组 var myArray = new Array(5); myArray[0] = "First Entry"; myArray[1] = "Second Entry"; myArray[2] = "Third Entry"; myArray[3] = "Fourth Entry"; myArray[4] = "Fifth Entry"; var anotherArray = new Array("First Entry","Second Entry","Third Entry","Fourth Entry","Fifth Entry"); // --> 13 数组排序 var myArray = new Array(5); myArray[0] = "z"; myArray[1] = "c"; myArray[2] = "d"; myArray[3] = "a"; myArray[4] = "q"; document.write(myArray.sort()); // --> 14 分割字符串 var myVariable = "a,b,c,d"; var stringArray = myVariable.split(","); document.write(stringArray[0]); document.write(stringArray[1]); document.write(stringArray[2]); document.write(stringArray[3]); // --> 15 弹出警告信息 window.alert("Hello"); // --> 16 弹出确认框 var result = window.confirm("Click OK to continue"); // --> 17 定义函数 function multiple(number1,number2) { var result = number1 * number2; return result; } // --> 18 调用JS函数 Link text Link text 19 在页面加载完成后执行函数 Body of the page 20 条件判断 var userChoice = window.confirm("Choose OK or Cancel"); var result = (userChoice == true) ? "OK" : "Cancel"; document.write(result); // --> 21 指定次数循环 var myArray = new Array(3); myArray[0] = "Item 0"; myArray[1] = "Item 1"; myArray[2] = "Item 2"; for (i = 0; i document.write(myArray + "
"); } // --> 22 设定将来执行 function hello() { window.alert("Hello"); } window.setTimeout("hello()",5000); // --> 23 定时执行函数 function hello() { window.alert("Hello"); window.setTimeout("hello()",5000); } window.setTimeout("hello()",5000); // --> 24 取消定时执行 function hello() { window.alert("Hello"); } var myTimeout = window.setTimeout("hello()",5000); window.clearTimeout(myTimeout); // --> 25 在页面卸载时候执行函数 Body of the page 26 访问对象 var myURL = document.URL; window.alert(myURL); 27 动态输出HTML document.write("Here's some information about this :"); document.write(""); document.write("Referring : " + document.referrer + ""); document.write(": " + + ""); document.write("URL: " + document.URL + ""); document.write(""); 28 输出换行 document.writeln("a"); document.writeln("b"); 29 输出日期 var thisDate = new Date(); document.write(thisDate.toString()); 30 指定日期的时区 var myOffset = -2; var currentDate = new Date(); var userOffset = currentDate.getTimezoneOffset()/60; var timeZoneDifference = userOffset - myOffset; currentDate.setHours(currentDate.getHours() + timeZoneDifference); document.write("The time and date in Central Europe is: " + currentDate.toLocaleString()); 31 设置日期输出格式 var thisDate = new Date(); var thisTimeString = thisDate.getHours() + ":" + thisDate.getMinutes(); var thisDateString = thisDate.getFullYear() + "/" + thisDate.getMonth() + "/" + thisDate.getDate(); document.write(thisTimeString + " on " + thisDateString); 32 读取URL参数 var urlParts = document.URL.split("?"); var parameterParts = urlParts[1].split("&"); for (i = 0; i var pairParts = parameterParts.split("="); var pairName = pairParts[0]; var pairValue = pairParts[1]; document.write(pairName + " :" +pairValue ); } 33 打开一个新的对象 function newDocument() { document.open(); document.write("This is a New "); document.close(); } 34 页面跳转 window.location = ":void(0);"; 35 添加网页加载进度窗口 var placeHolder = window.open('holder.html','placeholder','width=200,height=200'); The Main Page This is the main page 36 读取图像属性 Width 37 动态加载图像 myImage = new Image; myImage.src = "Tellers1.jpg"; 38 简单的图像替换 rollImage = new Image; rollImage.src = "rollImage1.jpg"; defaultImage = new Image; defaultImage.src = "image1.jpg"; οnmοuseοut="document.myImage.src = defaultImage.src;"> 39 随机显示图像 var imageList = new Array; imageList[0] = "image1.jpg"; imageList[1] = "image2.jpg"; imageList[2] = "image3.jpg"; imageList[3] = "image4.jpg"; var imageChoice = Math.floor(Math.random() * imageList.length); document.write(''); 40 函数实现的图像替换 var source = 0; var replacement = 1; function createRollOver(originalImage,replacementImage) { var imageArray = new Array; imageArray[source] = new Image; imageArray[source].src = originalImage; imageArray[replacement] = new Image; imageArray[replacement].src = replacementImage; return imageArray; } var rollImage1 = createRollOver("image1.jpg","rollImage1.jpg"); οnmοuseοut="document.myImage1.src = rollImage1[source].src;"> 41 创建幻灯片 var imageList = new Array; imageList[0] = new Image; imageList[0].src = "image1.jpg"; imageList[1] = new Image; imageList[1].src = "image2.jpg"; imageList[2] = new Image; imageList[2].src = "image3.jpg"; imageList[3] = new Image; imageList[3].src = "image4.jpg"; function slideShow(imageNumber) { document.slideShow.src = imageList[imageNumber].src; imageNumber += 1; if (imageNumber window.setTimeout("slideShow(" + imageNumber + ")",3000); } } 42 随机广告图片 var imageList = new Array; imageList[0] = "image1.jpg"; imageList[1] = "image2.jpg"; imageList[2] = "image3.jpg"; imageList[3] = "image4.jpg"; var urlList = new Array; urlList[0] = "http://some.host/"; urlList[1] = "http://another.host/"; urlList[2] = "http://somewhere.else/"; urlList[3] = "http://right.here/"; var imageChoice = Math.floor(Math.random() * imageList.length); document.write(' + imageList[imageChoice] + '">'); 43 表单构成 First Choice Second Choice 44 访问表单中的文本框内容 Check Text Field 45 动态复制文本框内容 Enter some Text: Copy Text: Copy Text Field 46 侦测文本框的变化 Enter some Text: 47 访问选中的Select 1 2 3 Check Selection List 48 动态增加Select项 1 2 document.myForm.mySelect.length++; document.myForm.mySelect.options[document.myForm.mySelect.length - 1].text = "3"; document.myForm.mySelect.options[document.myForm.mySelect.length - 1].value = "Third Choice"; 49 验证表单字段 function checkField(field) { if (field.value == "") { window.alert("You must enter a value in the field"); field.focus(); } } Text Field:
50 验证Select项 function checkList(selection) { if (selection.length == 0) { window.alert("You must make a selection from the list."); return false; } return true; } 51 动态改变表单的action Username:
Password:
> > 52 使用图像按钮 Username:
Password:
53 表单数据的加密 function encrypt(item) { var newItem = ''; for (i=0; i newItem += item.charCodeAt(i) + '.'; } return newItem; } function encryptForm(myForm) { for (i=0; i myForm.elements.value = encrypt(myForm.elements.value); } } //--> Enter Some Text: 54 改变浏览器状态栏文字提示 window.status = "A new status message"; 55 弹出确认提示框 var userChoice = window.confirm("Click OK or Cancel"); if (userChoice) { document.write("You chose OK"); } else { document.write("You chose Cancel"); } 56 提示输入 var userName = window.prompt("Please Enter Your Name","Enter Your Name Here"); document.write("Your Name is " + userName); 57 打开一个新窗口 window.open(":void(0);","myNewWindow"); 58 设置新窗口的大小 window.open(":void(0);","myNewWindow",'height=300,width=300'); 59 设置新窗口的位置 window.open(":void(0);", "myNewWindow", 'height=300,width=300,left=200,screenX=200,top=100,screenY=100'); 60 是否显示工具栏和滚动栏 window.open(':void(0);', 'myNewWindow', 'height=100, width=400, top=0, left=0, toolbar=no, menubar=no, + 'scrollbars=no, resizable=no,location=n o, status=no'); 61 是否可以缩放新窗口的大小 window.open(':void(0);', 'myNewWindow', 'resizable=yes'); 62 加载一个新的文档到当前窗口 Open New Document 63 设置页面的滚动位置 if (document.all) { //如果是IE浏览器则使用scrollTop属性 document.body.scrollTop = 200; } else { //如果是NetScape浏览器则使用pageYOffset属性 window.pageYOffset = 200; } 64 在IE中打开全屏窗口 > Open a full-screen window 65 新窗口和父窗口的操作 //定义新窗口 var newWindow = window.open("128a.html","newWindow"); newWindow.close(); //在父窗口中关闭打开的新窗口 //在新窗口中关闭父窗口 //window.opener.close() 66 往新窗口中写内容 var newWindow = window.open("","newWindow"); newWindow.document.open(); newWindow.document.write("This is a new window"); newWIndow.document.close(); 67 加载页面到框架页面 在frame1中加载frame2中的页面 parent.frame2.document.location = "135b.html"; 68 在框架页面之间共享脚本 //如果在frame1中html文件中有个脚本 function doAlert() { window.alert("Frame 1 is loaded"); } 那么在frame2中可以如此调用该方法 This is frame 2. 69 数据公用 //可以在框架页面定义数据项,使得该数据可以被多个框架中的页面公用 var persistentVariable = "This is a persistent value"; //这样在frame1和frame2中都可以使用变量persistentVariable 70 框架代码库 根据以上的一些思路,我们可以使用一个隐藏的框架页面来作为整个框架集的代码库