• (转载)javascript转自世纪流年blog


    (转载)http://www.cnblogs.com/tfe/articles/164205.html

    础知识

    2005年5月2日22:25星期一 [ Dhtml ]

    有些时候你精通一门语言,但是会发现你其实整天在和其它语言打交道,也许你以为这些微不足道,不至于影响你的开发进度,但恰恰是这些你不重视的东西会浪费你很多时间,我一直以为我早在几年前就已经精通JavaScript了,直到目前,我才越来越觉得JavaScript远比我想象的复杂和强大,我开始崇拜它,就像崇拜所有OOP语言一样~
    趁着节日的空隙,把有关JavaScript的方法和技巧整理下,让每个在为JavaScript而烦恼的人明白,JavaScript就这么回事!并希望JavaScript还可以成为你的朋友,让你豁然开朗,在项目中更好的应用~
    适合阅读范围:对JavaScript一无所知~离精通只差一步之遥的人
    基础知识:HTML



    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:浏览器输出

    2005年5月2日23:05星期一 [ Dhtml ]

    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:图像

    2005年5月2日23:34星期一 [ Dhtml ]

    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:表单

    2005年5月17日22:33星期二 [ Dhtml ]

    还是先继续写完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>

    上面的encryptForm方法把表单中的数据转换为编码,在提交表单之前完成了简单的表单数据加密~
     


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

    2005年5月17日23:16星期二 [ Dhtml ]

    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>
  • 相关阅读:
    Response.AddHeader使用实例收集
    JS回车键判断
    详解MongoDB中的多表关联查询($lookup)
    数据库设计三大范式
    一、表的设计步骤
    手把手教你,使用JWT实现单点登录
    【C#】ElasticSearch环境搭建与使用
    C#简单操作MongoDB
    net core WebAPI 初探及连接MySQL
    NoSQL 简介
  • 原文地址:https://www.cnblogs.com/Robotke1/p/3264874.html
Copyright © 2020-2023  润新知