js基础学习

jackxiang 2008-9-10 15:30 | |
适合阅读范围:对JavaScript一无所知~离精通只差一步之遥的人  
基础知识:HTML  


JavaScript就这么回事1:基础知识  

1 创建脚本块  

1: <script language=”JavaScript”>  
2: JavaScript code goes here  
3: </script>  



2 隐藏脚本代码  

1: <script language=”JavaScript”>  
2: <!--  
3: document.write(“Hello”);  
4: // -->  
5: </script>  


在不支持JavaScript的浏览器中将不执行相关代码  

3 浏览器不支持的时候显示  

1: <noscript>  
2: Hello to the non-JavaScript browser.  
3: </noscript>  



4 链接外部脚本文件  

1: <script language=”JavaScript” src="/”filename.js"”></script>  


5 注释脚本  

1: // This is a comment  
2: document.write(“Hello”); // This is a comment  
3: /*  
4: All of this  
5: is a comment  
6: */  



6 输出到浏览器  

1: document.write(“<strong>Hello</strong>”);  



7 定义变量  

1: var myVariable = “some value”;  



8 字符串相加  

1: var myString = “String1” + “String2”;  



9 字符串搜索  

1: <script language=”JavaScript”>  
2: <!--  
3: var myVariable = “Hello there”;  
4: var therePlace = myVariable.search(“there”);  
5: document.write(therePlace);  
6: // -->  
7: </script>  



10 字符串替换  

1: thisVar.replace(“Monday”,”Friday”);  


11 格式化字串  

1: <script language=”JavaScript”>  
2: <!--  
3: var myVariable = “Hello there”;  
4: document.write(myVariable.big() + “<br>”);  
5: document.write(myVariable.blink() + “<br>”);  
6: document.write(myVariable.bold() + “<br>”);  
7: document.write(myVariable.fixed() + “<br>”);  
8: document.write(myVariable.fontcolor(“red”) + “<br>”);  
9: document.write(myVariable.fontsize(“18pt”) + “<br>”);  
10: document.write(myVariable.italics() + “<br>”);  
11: document.write(myVariable.small() + “<br>”);  
12: document.write(myVariable.strike() + “<br>”);  
13: document.write(myVariable.sub() + “<br>”);  
14: document.write(myVariable.sup() + “<br>”);  
15: document.write(myVariable.toLowerCase() + “<br>”);  
16: document.write(myVariable.toUpperCase() + “<br>”);  
17:  
18: var firstString = “My String”;  
19: var finalString = firstString.bold().toLowerCase().fontcolor(“red”);  
20: // -->  
21: </script>  



12 创建数组  

1: <script language=”JavaScript”>  
2: <!--  
3: var myArray = new Array(5);  
4: myArray[0] = “First Entry”;  
5: myArray[1] = “Second Entry”;  
6: myArray[2] = “Third Entry”;  
7: myArray[3] = “Fourth Entry”;  
8: myArray[4] = “Fifth Entry”;  
9: var anotherArray = new Array(“First Entry”,”Second Entry”,”Third Entry”,”Fourth Entry”,”Fifth Entry”);  
10: // -->  
11: </script>  



13 数组排序  

1: <script language=”JavaScript”>  
2: <!--  
3: var myArray = new Array(5);  
4: myArray[0] = “z”;  
5: myArray[1] = “c”;  
6: myArray[2] = “d”;  
7: myArray[3] = “a”;  
8: myArray[4] = “q”;  
9: document.write(myArray.sort());  
10: // -->  
11: </script>  



14 分割字符串  

1: <script language=”JavaScript”>  
2: <!--  
3: var myVariable = “a,b,c,d”;  
4: var stringArray = myVariable.split(“,”);  
5: document.write(stringArray[0]);  
6: document.write(stringArray[1]);  
7: document.write(stringArray[2]);  
8: document.write(stringArray[3]);  
9: // -->  
10: </script>  



15 弹出警告信息  

1: <script language=”JavaScript”>  
2: <!--  
3: window.alert(“Hello”);  
4: // -->  
5: </script>  



16 弹出确认框  

1: <script language=”JavaScript”>  
2: <!--  
3: var result = window.confirm(“Click OK to continue”);  
4: // -->  
5: </script>  



17 定义函数  

1: <script language=”JavaScript”>  
2: <!--  
3: function multiple(number1,number2) {  
4: var result = number1 * number2;  
5: return result;  
6: }  
7: // -->  
8: </script>  



18 调用JS函数  

1: <a href=”#” onClick=”functionName()”>Link text</a>  
2: <a href="/”javascript:functionName"()”>Link text</a>  



19 在页面加载完成后执行函数  

1: <body onLoad=”functionName();”>  
2: Body of the page  
3: </body>  


20 条件判断  

1: <script>  
2: <!--  
3: var userChoice = window.confirm(“Choose OK or Cancel”);  
4: var result = (userChoice == true) ? “OK” : “Cancel”;  
5: document.write(result);  
6: // -->  
7: </script>  



21 指定次数循环  

1: <script>  
2: <!--  
3: var myArray = new Array(3);  
4: myArray[0] = “Item 0”;  
5: myArray[1] = “Item 1”;  
6: myArray[2] = “Item 2”;  
7: for (i = 0; i < myArray.length; i++) {  
8: document.write(myArray[i] + “<br>”);  
9: }  
10: // -->  
11: </script>  



22 设定将来执行  

1: <script>  
2: <!--  
3: function hello() {  
4: window.alert(“Hello”);  
5: }  
6: window.setTimeout(“hello()”,5000);  
7: // -->  
8: </script>  



23 定时执行函数  

1: <script>  
2: <!--  
3: function hello() {  
4: window.alert(“Hello”);  
5: window.setTimeout(“hello()”,5000);  
6: }  
7: window.setTimeout(“hello()”,5000);  
8: // -->  
9: </script>  



24 取消定时执行  

1: <script>  
2: <!--  
3: function hello() {  
4: window.alert(“Hello”);  
5: }  
6: var myTimeout = window.setTimeout(“hello()”,5000);  
7: window.clearTimeout(myTimeout);  
8: // -->  
9: </script>  



25 在页面卸载时候执行函数  

1: <body onUnload=”functionName();”>  
2: Body of the page  
3: </body>  

JavaScript就这么回事2:浏览器输出  


26 访问document对象  

1: <script language=”JavaScript”>  
2: var myURL = document.URL;  
3: window.alert(myURL);  
4: </script>  



27 动态输出HTML  

1: <script language=”JavaScript”>  
2: document.write(“<p>Here’s some information about this document:</p>”);  
3: document.write(“<ul>”);  
4: document.write(“<li>Referring Document: “ + document.referrer + “</li>”);  
5: document.write(“<li>Domain: “ + document.domain + “</li>”);  
6: document.write(“<li>URL: “ + document.URL + “</li>”);  
7: document.write(“</ul>”);  
8: </script>  


28 输出换行  

1: document.writeln(“<strong>a</strong>”);  
2: document.writeln(“b”);  



29 输出日期  

1: <script language=”JavaScript”>  
2: var thisDate = new Date();  
3: document.write(thisDate.toString());  
4: </script>  



30 指定日期的时区  

1: <script language=”JavaScript”>  
2: var myOffset = -2;  
3: var currentDate = new Date();  
4: var userOffset = currentDate.getTimezoneOffset()/60;  
5: var timeZoneDifference = userOffset - myOffset;  
6: currentDate.setHours(currentDate.getHours() + timeZoneDifference);  
7: document.write(“The time and date in Central Europe is: “ + currentDate.toLocaleString());  
8: </script>  


31 设置日期输出格式  

1: <script language=”JavaScript”>  
2: var thisDate = new Date();  
3: var thisTimeString = thisDate.getHours() + “:” + thisDate.getMinutes();  
4: var thisDateString = thisDate.getFullYear() + “/” + thisDate.getMonth() + “/” + thisDate.getDate();  
5: document.write(thisTimeString + “ on “ + thisDateString);  
6: </script>  


32 读取URL参数  

1: <script language=”JavaScript”>  
2: var urlParts = document.URL.split(“?”);  
3: var parameterParts = urlParts[1].split(“&”);  
4: for (i = 0; i < parameterParts.length; i++) {  
5: var pairParts = parameterParts[i].split(“=”);  
6: var pairName = pairParts[0];  
7: var pairValue = pairParts[1];  
8: document.write(pairName + “ :“ +pairValue );  
9: }  
10: </script>  

你还以为HTML是无状态的么?  

33 打开一个新的document对象  

1: <script language=”JavaScript”>  
2: function newDocument() {  
3: document.open();  
4: document.write(“<p>This is a New Document.</p>”);  
5: document.close();  
6: }  
7: </script>  



34 页面跳转  

1: <script language=”JavaScript”>  
2: window.location = “http://www.liu21st.com/”;  
3: </script>  



35 添加网页加载进度窗口  

1: <html>  
2: <head>  
3: <script language='javaScript'>  
4: var placeHolder = window.open('holder.html','placeholder','width=200,height=200');  
5: </script>  
6: <title>The Main Page</title>  
7: </head>  
8: <body onLoad='placeHolder.close()'>  
9: <p>This is the main page</p>  
10: </body>  
11: </html>  



JavaScript就这么回事3:图像  



36 读取图像属性  

1: <img src="/”image1.jpg"” name=”myImage”>  
2: <a href=”# ” onClick=”window.alert(document.myImage.width)”>Width</a>  
3:  


37 动态加载图像  

1: <script language=”JavaScript”>  
2: myImage = new Image;  
3: myImage.src = “Tellers1.jpg”;  
4: </script>  


38 简单的图像替换  

1: <script language=”JavaScript”>  
2: rollImage = new Image;  
3: rollImage.src = “rollImage1.jpg”;  
4: defaultImage = new Image;  
5: defaultImage.src = “image1.jpg”;  
6: </script>  
7: <a href="/”myUrl"” onMouseOver=”document.myImage.src = rollImage.src;”  
8: onMouseOut=”document.myImage.src = defaultImage.src;”>  
9: <img src="/”image1.jpg"” name=”myImage” width=100 height=100 border=0>  


39 随机显示图像  

1: <script language=”JavaScript”>  
2: var imageList = new Array;  
3: imageList[0] = “image1.jpg”;  
4: imageList[1] = “image2.jpg”;  
5: imageList[2] = “image3.jpg”;  
6: imageList[3] = “image4.jpg”;  
7: var imageChoice = Math.floor(Math.random() * imageList.length);  
8: document.write(‘<img src=”’ + imageList[imageChoice] + ‘“>’);  
9: </script>  


40 函数实现的图像替换  

1: <script language=”JavaScript”>  
2: var source = 0;  
3: var replacement = 1;  
4: function createRollOver(originalImage,replacementImage) {  
5: var imageArray = new Array;  
6: imageArray[source] = new Image;  
7: imageArray[source].src = originalImage;  
8: imageArray[replacement] = new Image;  
9: imageArray[replacement].src = replacementImage;  
10: return imageArray;  
11: }  
12: var rollImage1 = createRollOver(“image1.jpg”,”rollImage1.jpg”);  
13: </script>  
14: <a href=”#” onMouseOver=”document.myImage1.src = rollImage1[replacement].src;”  
15: onMouseOut=”document.myImage1.src = rollImage1[source].src;”>  
16: <img src="/”image1.jpg"” width=100 name=”myImage1” border=0>  
17: </a>  


41 创建幻灯片  

1: <script language=”JavaScript”>  
2: var imageList = new Array;  
3: imageList[0] = new Image;  
4: imageList[0].src = “image1.jpg”;  
5: imageList[1] = new Image;  
6: imageList[1].src = “image2.jpg”;  
7: imageList[2] = new Image;  
8: imageList[2].src = “image3.jpg”;  
9: imageList[3] = new Image;  
10: imageList[3].src = “image4.jpg”;  
11: function slideShow(imageNumber) {  
12: document.slideShow.src = imageList[imageNumber].src;  
13: imageNumber += 1;  
14: if (imageNumber < imageList.length) {  
15: window.setTimeout(“slideShow(“ + imageNumber + “)”,3000);  
16: }  
17: }  
18: </script>  
19: </head>  
20: <body onLoad=”slideShow(0)”>  
21: <img src="/”image1.jpg"” width=100 name=”slideShow”>  


42 随机广告图片  

1: <script language=”JavaScript”>  
2: var imageList = new Array;  
3: imageList[0] = “image1.jpg”;  
4: imageList[1] = “image2.jpg”;  
5: imageList[2] = “image3.jpg”;  
6: imageList[3] = “image4.jpg”;  
7: var urlList = new Array;  
8: urlList[0] = “http://some.host/”;  
9: urlList[1] = “http://another.host/”;  
10: urlList[2] = “http://somewhere.else/”;  
11: urlList[3] = “http://right.here/”;  
12: var imageChoice = Math.floor(Math.random() * imageList.length);  
13: document.write(‘<a href=”’ + urlList[imageChoice] + ‘“><img src=”’ + imageList[imageChoice] + ‘“></a>’);  
14: </script>  

JavaScript就这么回事4:表单  


还是先继续写完JS就这么回事系列吧~  
43 表单构成  

1: <form method=”post” action=”target.html” name=”thisForm”>  
2: <input type=”text” name=”myText”>  
3: <select name=”mySelect”>  
4: <option value=”1”>First Choice</option>  
5: <option value=”2”>Second Choice</option>  
6: </select>  
7: <br>  
8: <input type=”submit” value=”Submit Me”>  
9: </form>  


44 访问表单中的文本框内容  

1: <form name=”myForm”>  
2: <input type=”text” name=”myText”>  
3: </form>  
4: <a href='#' onClick='window.alert(document.myForm.myText.value);'>Check Text Field</a>  


45 动态复制文本框内容  

1: <form name=”myForm”>  
2: Enter some Text: <input type=”text” name=”myText”><br>  
3: Copy Text: <input type=”text” name=”copyText”>  
4: </form>  
5: <a href=”#” onClick=”document.myForm.copyText.value =  
6: document.myForm.myText.value;”>Copy Text Field</a>  


46 侦测文本框的变化  

1: <form name=”myForm”>  
2: Enter some Text: <input type=”text” name=”myText” onChange=”alert(this.value);”>  
3: </form>  


47 访问选中的Select  

1: <form name=”myForm”>  
2: <select name=”mySelect”>  
3: <option value=”First Choice”>1</option>  
4: <option value=”Second Choice”>2</option>  
5: <option value=”Third Choice”>3</option>  
6: </select>  
7: </form>  
8: <a href='#' onClick='alert(document.myForm.mySelect.value);'>Check Selection List</a>  


48 动态增加Select项  

1: <form name=”myForm”>  
2: <select name=”mySelect”>  
3: <option value=”First Choice”>1</option>  
4: <option value=”Second Choice”>2</option>  
5: </select>  
6: </form>  
7: <script language=”JavaScript”>  
8: document.myForm.mySelect.length++;  
9: document.myForm.mySelect.options[document.myForm.mySelect.length - 1].text = “3”;  
10: document.myForm.mySelect.options[document.myForm.mySelect.length - 1].value = “Third Choice”;  
11: </script>  


49 验证表单字段  

1: <script language=”JavaScript”>  
2: function checkField(field) {  
3: if (field.value == “”) {  
4: window.alert(“You must enter a value in the field”);  
5: field.focus();  
6: }  
7: }  
8: </script>  
9: <form name=”myForm” action=”target.html”>  
10: Text Field: <input type=”text” name=”myField”onBlur=”checkField(this)”>  
11: <br><input type=”submit”>  
12: </form>  


50 验证Select项  

1: function checkList(selection) {  
2: if (selection.length == 0) {  
3: window.alert(“You must make a selection from the list.”);  
4: return false;  
5: }  
6: return true;  
7: }  


51 动态改变表单的action  

1: <form name=”myForm” action=”login.html”>  
2: Username: <input type=”text” name=”username”><br>  
3: Password: <input type=”password” name=”password”><br>  
4: <input type=”button” value=”Login” onClick=”this.form.submit();”>  
5: <input type=”button” value=”Register” onClick=”this.form.action = ‘register.html’; this.form.submit();”>  
6: <input type=”button” value=”Retrieve Password” onClick=”this.form.action = ‘password.html’; this.form.submit();”>  
7: </form>  


52 使用图像按钮  

1: <form name=”myForm” action=”login.html”>  
2: Username: <input type=”text” name=”username”><br>  
3: Password: <input type=”password”name=”password”><br>  
4: <input type=”image” src="/”login.gif"” value=”Login”>  
5: </form>  
6:  


53 表单数据的加密  

1: <SCRIPT LANGUAGE='JavaScript'>  
2: <!--  
3: function encrypt(item) {  
4: var newItem = '';  
5: for (i=0; i < item.length; i++) {  
6: newItem += item.charCodeAt(i) + '.';  
7: }  
8: return newItem;  
9: }  
10: function encryptForm(myForm) {  
11: for (i=0; i < myForm.elements.length; i++) {  
12: myForm.elements[i].value = encrypt(myForm.elements[i].value);  
13: }  
14: }  
15:  
16: //-->  
17: </SCRIPT>  
18: <form name='myForm' onSubmit='encryptForm(this); window.alert(this.myField.value);'>  
19: Enter Some Text: <input type=text name=myField><input type=submit>  
20: </form>  




JavaScript就这么回事5:窗口和框架  


54 改变浏览器状态栏文字提示  

1: <script language=”JavaScript”>  
2: window.status = “A new status message”;  
3: </script>  


55 弹出确认提示框  

1: <script language=”JavaScript”>  
2: var userChoice = window.confirm(“Click OK or Cancel”);  
3: if (userChoice) {  
4: document.write(“You chose OK”);  
5: } else {  
6: document.write(“You chose Cancel”);  
7: }  
8: </script>  


56 提示输入  

1: <script language=”JavaScript”>  
2: var userName = window.prompt(“Please Enter Your Name”,”Enter Your Name Here”);  
3: document.write(“Your Name is “ + userName);  
4: </script>  


57 打开一个新窗口  

1: //打开一个名称为myNewWindow的浏览器新窗口  
2: <script language=”JavaScript”>  
3: window.open(“http://www.liu21st.com/”,”myNewWindow”);  
4: </script>  


58 设置新窗口的大小  

1: <script language=”JavaScript”>  
2: window.open(“http://www.liu21st.com/”,”myNewWindow”,'height=300,width=300');  
3: </script>  


59 设置新窗口的位置  

1: <script language=”JavaScript”>  
2: window.open(“http://www.liu21st.com/”,”myNewWindow”,'height=300,width=300,left=200,screenX=200,top=100,screenY=100');  
3: </script>  


60 是否显示工具栏和滚动栏  

1: <script language=”JavaScript”>  
2: window.open(“http:  


61 是否可以缩放新窗口的大小  

1: <script language=”JavaScript”>  
2: window.open('http://www.liu21st.com/' , 'myNewWindow', 'resizable=yes' );</script>  


62 加载一个新的文档到当前窗口  

1: <a href='#' onClick='document.location = '125a.html';' >Open New Document</a>  


63 设置页面的滚动位置  

1: <script language=”JavaScript”>  
2: if (document.all) { //如果是IE浏览器则使用scrollTop属性  
3: document.body.scrollTop = 200;  
4: } else { //如果是NetScape浏览器则使用pageYOffset属性  
5: window.pageYOffset = 200;  
6: }</script>  


64 在IE中打开全屏窗口  

1: <a href='#' onClick=”window.open('http://www.juxta.com/','newWindow','fullScreen=yes');”>Open a full-screen window</a>  


65 新窗口和父窗口的操作  

1: <script language=”JavaScript”>  
2: //定义新窗口  
3: var newWindow = window.open(“128a.html”,”newWindow”);  
4: newWindow.close(); //在父窗口中关闭打开的新窗口  
5: </script>  
6: 在新窗口中关闭父窗口  
7: window.opener.close()  


66 往新窗口中写内容  

1: <script language=”JavaScript”>  
2: var newWindow = window.open(“”,”newWindow”);  
3: newWindow.document.open();  
4: newWindow.document.write(“This is a new window”);  
5: newWIndow.document.close();  
6: </script>  


67 加载页面到框架页面  

1: <frameset cols=”50%,*”>  
2: <frame name=”frame1” src="/”135a.html"”>  
3: <frame name=”frame2” src="/”about:blank"”>  
4: </frameset>  
5: 在frame1中加载frame2中的页面  
6: parent.frame2.document.location = “135b.html”;  


68 在框架页面之间共享脚本  
如果在frame1中html文件中有个脚本  

1: function doAlert() {  
2: window.alert(“Frame 1 is loaded”);  
3: }  

那么在frame2中可以如此调用该方法  

1: <body onLoad=”parent.frame1.doAlert();”>  
2: This is frame 2.  
3: </body>  


69 数据公用  
可以在框架页面定义数据项,使得该数据可以被多个框架中的页面公用  

1: <script language=”JavaScript”>  
2: var persistentVariable = “This is a persistent value”;  
3: </script>  
4: <frameset cols=”50%,*”>  
5: <frame name=”frame1” src="/”138a.html"”>  
6: <frame name=”frame2” src="/”138b.html"”>  
7: </frameset>  


这样在frame1和frame2中都可以使用变量persistentVariable  
70 框架代码库  
根据以上的一些思路,我们可以使用一个隐藏的框架页面来作为整个框架集的代码库  

1: <frameset cols=”0,50%,*”>  
2: <frame name=”codeFrame” src="/”140code.html"”>  
3: <frame name=”frame1” src="/”140a.html"”>  
4: <frame name=”frame2” src="/”140b.html"”>  
5: </frameset>

作者:jackxiang@向东博客 专注WEB应用 构架之美 --- 构架之美,在于尽态极妍 | 应用之美,在于药到病除
地址:https://jackxiang.com/post/1242/
版权所有。转载时必须以链接形式注明作者和原始出处及本声明!

评论列表
发表评论

昵称

网址

电邮

打开HTML 打开UBB 打开表情 隐藏 记住我 [登入] [注册]