JavaScript方法和技巧大全

2009年3月22日星期日

JavaScript方法和技巧大全

这篇介绍JavaScript方面的日志,我在是Clang上看到的。作者介绍挺全面的,所以转载过来让感兴趣的朋友看一下。呵呵~~~
有些时候你精通一门语言,但是会发现你其实整天在和其它语言打交道,也许你以为这些微不足道,不至于影响你的开发进度,但恰恰是这些你不重视的东西会浪费你很多时间,我一直以为我早在几年前就已经精通JavaScript了,直到目前,我才越来越觉得JavaScript远比我想象的复杂和强大,我开始崇拜它,就像崇拜所有OOP语言一样~趁着节日的空隙,把有关JavaScript的方法和技巧整理下,让每个在为JavaScript而烦恼的人明白,JavaScript就这么回事!并希望JavaScript还可以成为你的朋友,让你豁然开朗,在项目中更好的应用~
适合阅读范围:对JavaScript一无所知~离精通只差一步之遥的人基础知识:HTML
JavaScript就这么回事1:基础知识
1 创建脚本块
1:<script language="”JavaScript”">2: JavaScript code goes here3: </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 comment2: document.write(“Hello”); // This is a comment3: /*4: All of this5: is a comment6: */

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() + “
”);5: document.write(myVariable.blink() + “
”);6: document.write(myVariable.bold() + “
”);7: document.write(myVariable.fixed() + “
”);8: document.write(myVariable.fontcolor(“red”) + “
”);9: document.write(myVariable.fontsize(“18pt”) + “
”);10: document.write(myVariable.italics() + “
”);11: document.write(myVariable.small() + “
”);12: document.write(myVariable.strike() + “
”);13: document.write(myVariable.sub() + “
”);14: document.write(myVariable.sup() + “
”);15: document.write(myVariable.toLowerCase() + “
”);16: document.write(myVariable.toUpperCase() + “
”);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 onclick="”functionName()”" href="http://www.blogger.com/”#”">Link text</a>2: <a href="http://www.blogger.com/”javascript:functionName">Link text</a>

19 在页面加载完成后执行函数
1: 2: Body of the page3:
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 <>”);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: 2: Body of the page3:
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 < pairparts =" parameterParts[i].split(“=" pairname =" pairParts[0];7:" pairvalue =" pairParts[1];8:">
你还以为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: 2: 3:<script language="'javaScript'">4: var placeHolder = window.open('holder.html','placeholder','width=200,height=200');5: </script>
6: 7: 8: 9: <p>This is the main page</p>10: 11:

JavaScript就这么回事3:图像

36 读取图像属性
1: <img src="http://www.blogger.com/”image1.jpg" name="”myImage”" />2: <a onclick="”window.alert(document.myImage.width)”" href="http://www.blogger.com/”#">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 onmouseover="”document.myImage.src" onmouseout="”document.myImage.src" href="http://www.blogger.com/”myUrl">9: <img height="100" src="http://www.blogger.com/”image1.jpg" width="100" border="0" name="”myImage”" />
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="”’" />’);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 onmouseover="”document.myImage1.src" onmouseout="”document.myImage1.src" href="http://www.blogger.com/”#”">16: <img src="http://www.blogger.com/”image1.jpg" width="100" border="0" name="”myImage1”" />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 <>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="”’"><img src="”’" /></a>’);14: </script>

JavaScript就这么回事4:表单
还是先继续写完JS就这么回事系列吧~43 表单构成
1: <form name="”thisForm”" action="”target.html”" method="”post”">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:
8: <input type="”submit”" value="”Submit">9: </form>
44 访问表单中的文本框内容
1: <form name="”myForm”">2: <input type="”text”" name="”myText”">3: </form>4: <a onclick="'window.alert(document.myForm.myText.value);'" href="http://www.blogger.com/">Check Text Field</a>
45 动态复制文本框内容
1: <form name="”myForm”">2: Enter some Text: <input type="”text”" name="”myText”">
3: Copy Text: <input type="”text”" name="”copyText”">4: </form>5: <a onclick="”document.myForm.copyText.value" href="http://www.blogger.com/”#”">Copy Text Field</a>
46 侦测文本框的变化
1: <form name="”myForm”">2: Enter some Text: <input type="”text”" onchange="”alert(this.value);”" name="”myText”">3: </form>
47 访问选中的Select
1: <form name="”myForm”">2: <select name="”mySelect”">3: <option value="”First">1</option>4: <option value="”Second">2</option>5: <option value="”Third">3</option>6:</select>7: </form>8: <a onclick="'alert(document.myForm.mySelect.value);'" href="http://www.blogger.com/">Check Selection List</a>
48 动态增加Select项
1: <form name="”myForm”">2: <select name="”mySelect”">3: <option value="”First">1</option>4: <option value="”Second">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=">11:
<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”">
3: Password: <input type="”password”" name="”password”">
4: <input onclick="”this.form.submit();”" type="”button”" value="”Login”">5: <input onclick="”this.form.action" type="”button”" value="”Register”">6: <input onclick="”this.form.action" type="”button”" value="”Retrieve">7: </form>
52 使用图像按钮
1: <form name="”myForm”" action="”login.html”">2: Username: <input type="”text”" name="”username”">
3: Password: <input type="”password”name=">
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 < i="0;" value =" encrypt(myForm.elements[i].value);13:">17: </script>

    0 评论:

    发表评论