国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

JavaWeb 速通JavaScript

這篇具有很好參考價值的文章主要介紹了JavaWeb 速通JavaScript。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

目錄

一、JavaScript快速入門

? ? ? ? 1.基本介紹 :?

? ? ? ? 2.JavaScript特點 :?

? ? ? ? 3.JavaScript使用方式 :?

? ? ? ? ? ? ? ? 1° 方式一 : 寫在<script>標(biāo)簽中

? ? ? ? ? ? ? ? 2° 方式二 : 以外部文件形式引入

? ? ? ? ? ? ? ? PS : 注意事項

? ? ? ? 4.JavaScript查錯方式 :?

二、JavaScript數(shù)據(jù)類型

? ? ? ? 1.變量 :?

? ? ? ? 2.數(shù)據(jù)類型 :?

? ? ? ? 3.特殊值 :?

三、JavaScript運算符

? ? ? ? 1.算術(shù)運算符:

? ? ? ? 2.關(guān)系運算符 :?

? ? ? ? 3.賦值運算符 :?

? ? ? ? 4.邏輯運算符 :?

? ? ? ? 5.三目運算符 :?

四、JavaScript數(shù)組

? ? ? ? 1.數(shù)組的定義 :?

? ? ? ? 2.數(shù)組的遍歷 :?

五、JavaScript函數(shù)

? ? ? ? 1.簡介 :?

? ? ? ? 2.定義 :?

? ? ? ? ? ? ? ? 1° 通過function關(guān)鍵字來定義函數(shù)?

? ? ? ? ? ? ? ? 2° 通過將函數(shù)賦值給變量

? ? ? ? 3.注意事項 :?

六、JavaScript對象

? ? ? ? 1.對象的定義 :

? ? ? ? ? ? ? ? 1° 方式一 : 通過Object

? ? ? ? ? ? ? ? 2° 方式二 : 通過{} (使用頻率更高!)

? ? ? ? 2.對象的訪問 :?

七、JavaScript事件

? ? ? ? 1.基本介紹 :?

? ? ? ? 2.常見事件 :?

? ? ? ? 3.事件分類 :?

? ? ? ? 4.事件演示 :?

? ? ? ? ? ? ? ? 1° onload事件

? ? ? ? ? ? ? ? 2° onclick事件

? ? ? ? ? ? ? ? 3°?onblur事件

? ? ? ? ? ? ? ? 4° onchange事件

? ? ? ? ? ? ? ? 5° onsubmit事件???

八、JavaScript總結(jié)


一、JavaScript快速入門

? ? ? ? 1.基本介紹 :?

????????JavaScript 能改變 HTML 的內(nèi)容和屬性,能改變 HTML 的樣式 (CSS),能完成頁面的數(shù)據(jù)驗證;JavaScript用于控制網(wǎng)頁的行為。

? ? ? ? JavaScript簡稱JS, 需要運行瀏覽器來解析執(zhí)行 JavaScript 代碼。

? ? ? ? 關(guān)于JS代碼——

? ? ? ? (1)JavaScript代碼寫在<script></script>標(biāo)簽中。
? ? ? ? (2)在<script>標(biāo)簽中要添加屬性type="text/javascript"。
? ? ? ? (3)javascript語句可不寫分號(建議寫上)。

? ? ? ? 2.JavaScript特點 :?

????????1.JavaScript 是一種解釋型的腳本語言。C、C++等語言是先編譯后執(zhí)行,而 JavaScript 是在程序的運行過程中由解釋器逐行進(jìn)行解釋。

? ? ? ? PS :?

? ? ? ? 解釋性語言——JavaScript, Java, PHP等。

? ? ? ? 編譯性語言——C/C++。

? ? ? ? 區(qū)別——解釋性語言編譯后的代碼,不能直接被機(jī)器執(zhí)行,需要解釋器來執(zhí)行編譯性語言編譯后的代碼,可以直接被機(jī)器執(zhí)行。
????????2.JavaScript 是一種基于對象的腳本語言,可以創(chuàng)建對象,也能使用現(xiàn)有的對象(有對象)。
????????3.JavaScript 是弱類型的,對變量的數(shù)據(jù)類型不做嚴(yán)格的要求,變量的數(shù)據(jù)類型在運行過程可以變化(對語法的約束性弱)。

? ? ? ? ? ? ? ? 代碼演示 :?

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>first javascript</title>
    <script type="text/javascript">
        var name_EX = "Cyan";                   //var用于定義一個變量
        console.log("name_EX = " + name_EX);    //表示在控制臺輸出name變量的值
        console.log(typeof name_EX);            //表示在控制臺輸出name變量的類型

        name_EX = 100;                          //改變name變量的類型(弱類型)
        console.log("name_EX = " + name_EX);
        console.log(typeof name_EX);
    </script>
</head>
<body>
</body>
</html>

? ? ? ? ? ? ? ? 運行結(jié)果 :?

JavaWeb 速通JavaScript,JavaWeb,# HTML+CSS+JS,javascript,開發(fā)語言,java,Java,后端

? ? ? ? 3.JavaScript使用方式 :?

? ? ? ? ? ? ? ? 1° 方式一 : 寫在<script>標(biāo)簽中

? ? ? ? 可以在<head>或者<body>中嵌入<script></script>標(biāo)簽;(建議在<head></head>標(biāo)簽下);執(zhí)行順序是從上到下。?

? ? ? ? ? ? ? ? 2° 方式二 : 以外部文件形式引入

? ? ? ? 在<script></script>標(biāo)簽中直接添加type屬性和src屬性。type="text/javascript"指明導(dǎo)入的是javascript腳本文件;src屬性指明.js文件的路徑。

? ? ? ? ? ? ? ? 代碼演示 :?

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>use by introducing outer file</title>
    <script type="text/javascript" src="../../../js/demo.js"></script>
</head>
<body>
</body>
</html>

? ? ? ? ? ? ? ? .js外部文件如下 :?

var v1 = "RA9";
console.log("v1 = " + v1);
console.log(typeof v1);

v1 = 233;
console.log("v1 = " + v1);
console.log(typeof v1);

? ? ? ? ? ? ? ? 運行結(jié)果 :?

JavaWeb 速通JavaScript,JavaWeb,# HTML+CSS+JS,javascript,開發(fā)語言,java,Java,后端

? ? ? ? ? ? ? ? PS : 注意事項

????????兩種使用 js 的方式(script標(biāo)簽嵌入script標(biāo)簽引入),是二選一,不能混用。

? ? ? ? 同時使用雖然不會報錯,但只有前面引入的js文件生效。

? ? ? ? 4.JavaScript查錯方式 :?

????????????????以Google Browser為例,在html頁面,進(jìn)入開發(fā)者工具(Ctrl + Shift + i),在控制臺(Console)界面可以找到出錯代碼所在的位置(行數(shù)),如下圖所示 :?

JavaWeb 速通JavaScript,JavaWeb,# HTML+CSS+JS,javascript,開發(fā)語言,java,Java,后端

?????????????????若想直接定位到錯誤位置的源碼,可以點擊右側(cè)的error,如下圖所示 :?

JavaWeb 速通JavaScript,JavaWeb,# HTML+CSS+JS,javascript,開發(fā)語言,java,Java,后端

? ? ? ? ? ? ? ? 定位源碼,如下圖所示 :?

JavaWeb 速通JavaScript,JavaWeb,# HTML+CSS+JS,javascript,開發(fā)語言,java,Java,后端


二、JavaScript數(shù)據(jù)類型

? ? ? ? 1.變量 :?

????????變量是用于存儲信息的"容器"。JavaScript 變量可用于存放值(比如 x=5)和表達(dá)式(比如 z=x+y)JS變量對大小寫敏感。

? ? ? ? ? ? ? ? 內(nèi)存指瀏覽器的內(nèi)核空間。變量指向某一個內(nèi)存空間。
????????????????如下圖所示 :??

JavaWeb 速通JavaScript,JavaWeb,# HTML+CSS+JS,javascript,開發(fā)語言,java,Java,后端

? ? ? ? 2.數(shù)據(jù)類型 :?

? ? ? ? 常用數(shù)據(jù)類型如下——
? ? ? ? 數(shù)值類型: number
? ? ? ? PS : 聯(lián)系Java的包裝類——除了Character類和Boolean類外,其他六大包裝類都繼承自Number類。

? ? ? ? 字符串類型: string(包含單個字符和字符串)

? ? ? ? PS :?string字符串既可以用雙引號括起來,也可以單引號括起來,并且允許空字符串""
? ? ? ? 布爾類型: boolean(true,false)
? ? ? ? 對象類型: object
? ? ? ? 函數(shù)類型: function(方法)

? ? ? ? 3.特殊值 :?

????????undefined : 使用未初始化的變量,默認(rèn) undefined
????????null : 空值
????????NaN(Not a Number) : 非數(shù)值

? ? ? ? ? ? ? ? 代碼演示 :?

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>special value</title>
    <script type="text/javascript">
        var v1;
        console.log("v1 = " + v1);
        console.log(typeof v1);

        var v2 = null;
        console.log("v2 = " + v2);
        console.log(typeof v2);

        var v3 = 5 * 'Cyan';
        console.log("v3 = " + v3);
        console.log(typeof v3);
    </script>
</head>
<body>
</body>
</html>

? ? ? ? ? ? ? ? 運行結(jié)果 :?

JavaWeb 速通JavaScript,JavaWeb,# HTML+CSS+JS,javascript,開發(fā)語言,java,Java,后端


三、JavaScript運算符

? ? ? ? 1.算術(shù)運算符:

????????算術(shù)運算符用于執(zhí)行變量與/或值之間的算術(shù)運算。

? ? ? ? JavaScript中算術(shù)運算符的使用與Java幾無二致。

? ? ? ? 2.關(guān)系運算符 :?

????????關(guān)系(比較) 運算符在邏輯語句中使用,以測定變量或值是否相等

? ? ? ? JS的關(guān)系運算符與Java幾無二致,特殊的地方在于——
? ? ? ? === : 全等(類型和值都要求相等)

? ? ? ? == : 相等(僅要求字面值的相等)

? ? ? ? 3.賦值運算符 :?

????????賦值運算符用于給 JavaScript 變量賦值。

????????JS中賦值運算符的使用與Java幾無二致。?

? ? ? ? 4.邏輯運算符 :?

? ? ? ? 邏輯運算符用于測定變量或值之間的邏輯。

? ? ? ? JS邏輯運算符的使用與Java幾無二致,特殊的地方在于——

? ? ? ? 在JavaScript語言中,所有的變量,都可以作為一個 boolean 類型的變量去使用
? ? ? ? 0 、null、 undefined、""(空串)、NaN都認(rèn)為是 false。

? ? ? ? JS邏輯運算符也遵循“短路與”和“短路或”的機(jī)制,

? ? ? ? PS : 短路與全真時,返回最后一個表達(dá)式的值;短路或全假時,返回最后一個表達(dá)式的值。注意,當(dāng)返回的表達(dá)式是一個有具體值的變量,會返回該表達(dá)式的值

? ? ? ? ? ? ? ? 代碼演示 :?

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>operator</title>
    <script type="text/javascript">
        var b1 = "233.333";
        if (b1) {
            console.log("This is true!");         //alert表示彈窗的意思
        }

        var b2 = NaN;
        if (!b2) {
            console.log("NaN boil down to false");
        }

        var i = 11;
        var b3 = "800" || i++;
        console.log("b3 = " + b3  + ", i = " + i);

        var b4 = 1.55 && 100 + 2;
        console.log("b4 = " + b4);
    </script>
</head>
<body>
</body>
</html>

? ? ? ? ? ? ? ? 運行結(jié)果 :?

JavaWeb 速通JavaScript,JavaWeb,# HTML+CSS+JS,javascript,開發(fā)語言,java,Java,后端

? ? ? ? 5.三目運算符 :?

? ? ? ? JS也支持三目運算符,使用規(guī)則與Java相同。????????

? ? ? ? 仍然需要注意的是,在JavaScript語言中,所有的變量都可以作為一個Boolean類型的變量去使用,因此,三目運算符的返回結(jié)果可以是一個具體的值(表達(dá)式的值)。


四、JavaScript數(shù)組

? ? ? ? 1.數(shù)組的定義 :?

? ? ? ? JS中,同一個數(shù)組允許有不同數(shù)據(jù)類型的元素(弱類型語言)

? ? ? ? 若想訪問數(shù)組中某一個確定的元素,通過下標(biāo)來訪問

? ? ? ? 數(shù)組定義方式1 :?

????????var fruit?= ["apple", "grape", "watermelon"];

? ? ? ? PS : 方式1也支持空數(shù)組。eg : var fruit?= [];

? ? ? ? 數(shù)組定義方式2?:?

? ? ? ? var fruit2?= new Array("apple", "grape", "watermelon");

? ? ? ? PS : 方式2也支持空數(shù)組。eg : var fruit2 = new Array();

? ? ? ? ? ? ? ? 代碼演示 :?

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>array definition</title>
    <script type="text/javascript">
        var fruit = ["apple", "grape", "watermelon"];
        console.log("fruit = "  + fruit);
        console.log("fruit[2] = " + fruit[2]);
        var fruit_ = [];
        fruit_[0] = 3;          //相當(dāng)于擴(kuò)容。
        fruit_[4] = 11;         //被跳過的元素自動為undefined
        console.log("fruit_ = " + fruit_);
        console.log("fruit_[2] = " + fruit_[2]);
        console.log("---------------------------------");

        var fruit2 = new Array("pineapple", "strawberry", "blueberry");
        console.log("fruit2 = " + fruit2);
        console.log("fruit2[1] = " + fruit2[1]);
        //var fruit2_ = new Array();
        //like above
    </script>
</head>
<body>
</body>
</html>

? ? ? ? ? ? ? ? 運行結(jié)果 :?

JavaWeb 速通JavaScript,JavaWeb,# HTML+CSS+JS,javascript,開發(fā)語言,java,Java,后端

? ? ? ? 2.數(shù)組的遍歷 :?

? ? ? ? 先通過數(shù)組.length來獲取數(shù)組的長度,然后再通過for循環(huán)來遍歷數(shù)組。

? ? ? ? ? ? ? ? 代碼演示 :?

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>traverse the array</title>
    <script type="text/javascript">
        var animals = [11, 233.333, "Cyan", true];
        animals[1] = 5;     //可以達(dá)到替換的效果。(JS中的數(shù)組兼具Java中數(shù)組和集合的特點)

        for (i = 0; i < animals.length; ++i) {
            console.log("animals[" + i + "] = " + animals[i]);    //log會自動換行。
        }
    </script>
</head>
<body>
</body>
</html>

? ? ? ? ? ? ? ? 運行結(jié)果 :?

JavaWeb 速通JavaScript,JavaWeb,# HTML+CSS+JS,javascript,開發(fā)語言,java,Java,后端


五、JavaScript函數(shù)

? ? ? ? 1.簡介 :?

????????函數(shù)是由事件驅(qū)動的,或者當(dāng)它被調(diào)用時,執(zhí)行的可重復(fù)使用的代碼塊。

? ? ? ? 2.定義 :?

? ? ? ? ? ? ? ? 1° 通過function關(guān)鍵字來定義函數(shù)?

? ? ? ? 基本語法格式如下 :?
? ? ? ? function 函數(shù)名(形參列表) {?

? ? ? ? ? ? ? ? //函數(shù)體(方法體)

? ? ? ? ? ? ? ? return語句;

? ? ? ? }

? ? ? ? ? ? ? ? 代碼演示 :

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>The way to define function No.1</title>
    <script type="text/javascript">
        /*
            函數(shù)只有在被調(diào)用時才會執(zhí)行。
         */
        function f1() {
            console.log("This is f1()");
        }
        f1();

        function f2(t1, t2) {
            console.log("t1 = " + t1 + ", t2 = " + t2);
        }
        f2(11, 5);

        function f3() {
            return "haha";
        }
        console.log("f3() = " + f3());

        function f4(name) {
            return "Cyan" + name;
        }
        console.log("f4() = " + f4("RA9"));
    </script>
</head>
<body>
</body>
</html>

? ? ? ? ? ? ? ? 運行結(jié)果 :?

JavaWeb 速通JavaScript,JavaWeb,# HTML+CSS+JS,javascript,開發(fā)語言,java,Java,后端

? ? ? ? ? ? ? ? 2° 通過將函數(shù)賦值給變量

? ? ? ? 基本語法格式如下 :?
? ? ? ? var 函數(shù)名 = function? (形參列表) {?

? ? ? ? ? ? ? ? //函數(shù)體(方法體)

? ? ? ? ? ? ? ? return語句;

? ? ? ? }

? ? ? ? ? ? ? ? 代碼演示 :?

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>define function in way 2</title>
    <script type="text/javascript">
        var ff1 = function () {
            return "haha";
        }
        console.log("ff1 = " + ff1());

        var ff2 = ff1;
        console.log("ff2 = " + ff2());
    </script>
</head>
<body>
</body>
</html>

? ? ? ? ? ? ? ? 運行結(jié)果 :?

JavaWeb 速通JavaScript,JavaWeb,# HTML+CSS+JS,javascript,開發(fā)語言,java,Java,后端

? ? ? ? 3.注意事項 :?

???????? JS 中不允許函數(shù)的重載,“重載”會覆蓋掉上一次函數(shù)的定義。
???????? 關(guān)于函數(shù)的 arguments 隱形參數(shù)(作用域在 function 函數(shù)內(nèi))——
????????????????(1) 隱形參數(shù): 在 function 函數(shù)中不需要定義,可以直接用來獲取所有的實參。
????????????????(2) 隱形參數(shù)在使用上類似Java的可變參數(shù),但是arguments允許多類型.(

? ? ? ? ?關(guān)于函數(shù)形參個數(shù)和實參個數(shù)不匹配的問題 ——

????????????????(1)實參按照順序一一匹配形參;
????????????????(2)不管傳入多少實參,統(tǒng)統(tǒng)都可以在arguments隱形參數(shù)中找到。
????????????????(3)當(dāng)實參個數(shù)多于形參個數(shù),按順序匹配形參,多余的實參無效;當(dāng)實參個數(shù)少于形參個數(shù),未初始化的形參 = undefined。

? ? ? ? ? ? ? ? 代碼演示 :?

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>some details about JS's function</title>
    <script type="text/javascript">
        function f1() {
            console.log("I'm non-parameter f1.");
        }
        function f1(name) {
            console.log("I'm parameter's f1");
            console.log("name = " + name);
        }
        f1();   //被覆蓋,無參,實際卻調(diào)用了有參。
        console.log("===========================================================");

        var f2 = function (a,b,c) {
            console.log("I'm f2");
            console.log("arguments = ", arguments);     //如果想輸入對象的詳細(xì)數(shù)據(jù),中間用,隔開
            console.log("b = " + arguments[1]);
            console.log("arguments' length = " + arguments.length);
        }
        f2(5,11,24,23,2);
        f2(11);
    </script>
</head>
<body>
</body>
</html>

? ? ? ? ? ? ? ? 運行結(jié)果 :?

JavaWeb 速通JavaScript,JavaWeb,# HTML+CSS+JS,javascript,開發(fā)語言,java,Java,后端


六、JavaScript對象

? ? ? ? 1.對象的定義 :

? ? ? ? ? ? ? ? 1° 方式一 : 通過Object

????????var 對象名 = new Object(); ????????????????????????// 對象實例(空對象)

????????對象名.屬性名 = 值; ???????????????????????????????????// 定義一個屬性
????????對象名.函數(shù)名 = function(){} ??????????????????????// 定義一個函數(shù)

? ? ? ? PS : JS和Java創(chuàng)建對象的區(qū)別——

? ? ? ? ? ? ? ? Java是先確定對象有什么,再去創(chuàng)建對象;而JavaScript是先創(chuàng)建對象,再去決定給對象添加什么內(nèi)容。

? ? ? ? ? ? ? ? 代碼演示 :?

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>define object in way.1</title>
    <script type="text/javascript">
        var stu = new Object();     //"built-in" 內(nèi)置對象
        console.log("stu's type = " + typeof(stu));

        stu.name = "Cyan";
        stu.age = "21";
        stu.sex = "male";
        stu.score = "420";

        stu.info = function () {
            console.log("name = " + this.name + ", age = " + this.age + ", sex = "
                + this.sex + ", score = " +  this.score);
        }
        stu.info();

        //變量提升 (undefined)
        stu.unknown = function () {
            console.log("hobby = " + this.hobby + ", advantage = " + this.advantage);
        }
        stu.unknown();
    </script>
</head>
<body>
</body>
</html>

? ? ? ? ? ? ? ? 運行結(jié)果 :?

JavaWeb 速通JavaScript,JavaWeb,# HTML+CSS+JS,javascript,開發(fā)語言,java,Java,后端

? ? ? ? ? ? ? ? 2° 方式二 : 通過{} (使用頻率更高!

? ? ? ? Δ注意冒號:逗號,的使用?。?!

????????var 對象名 = {
????????????????屬性名:值, ????????????????// 定義屬性
????????????????屬性名:值, ????????????????// 定義屬性
????????????????函數(shù)名:function () {} // 定義函數(shù)
????????}

? ? ? ? PS : 除最后一個定義外,其他定義語句后必須加逗號。

? ? ? ? ? ? ? ? 代碼演示 :?

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Object definition No.2</title>
    <script type="text/javascript">
        var employee = {
            id: 1,
            name: "Cyan_RA9",
            sex: "male",
            score: 420,

            info: function () {
                console.log("id = " + this.id + ", name = " + this.name + ", sex = " + 
                    this.sex + ", score = " + this.score);
            },
            hobby: function (hobby) {
                return "I relish playing " + hobby;
            }
        }
        
        employee.info();
        console.log(employee.hobby("basketball"));
    </script>
</head>
<body>
</body>
</html>

? ? ? ? ? ? ? ? 運行結(jié)果 :?

JavaWeb 速通JavaScript,JavaWeb,# HTML+CSS+JS,javascript,開發(fā)語言,java,Java,后端

? ? ? ? 2.對象的訪問 :?

? ? ? ? 訪問對象屬性——

? ? ? ? ? ? ? ? 對象.屬性;

? ? ? ? 訪問對象行為——

? ? ? ? ? ? ? ? 對象.函數(shù)名();


七、JavaScript事件

? ? ? ? 1.基本介紹 :?

? ? ? ? 事件是電腦輸入設(shè)備與頁面進(jìn)行交互的響應(yīng)。
? ? ? ? 事件通常與函數(shù)配合使用,這樣就可以通過發(fā)生的事件來驅(qū)動函數(shù)執(zhí)行。

? ? ? ? 2.常見事件 :?

事件 描述
onblur 失去焦點
onchange HTML 元素已被改變
onclick 用戶點擊了 HTML 元素
onmouseover 用戶把鼠標(biāo)移動到 HTML 元素上
onmouseout 用戶把鼠標(biāo)移開 HTML 元素
onkeydown 用戶按下鍵盤按鍵
onload 瀏覽器已經(jīng)完成頁面加載
onsubmit 表單提交事件

? ? ? ? 3.事件分類 :?

? ? ? ? 事件注冊(綁定):
? ? ? ? 決定事件響應(yīng)(觸發(fā))后瀏覽器要執(zhí)行哪些操作代碼,叫事件注冊或事件綁定。
? ? ? ? ?靜態(tài)注冊事件 :
????????通過 html 標(biāo)簽的事件屬性?直接賦予事件響應(yīng)后的代碼,這種方式叫靜態(tài)注冊。(用的不多)
? ? ? ? 2°?動態(tài)注冊事件:
????????通過JS代碼得到標(biāo)簽對應(yīng)的 dom 對象,然后再通過 dom 對象.事件名 = function(){} 來反控標(biāo)簽的行為,這種形式叫動態(tài)注冊。
? ? ? ? PS:動態(tài)注冊事件步驟——
????????????????1. 獲取標(biāo)簽對應(yīng)的dom對象。
????????????????2. dom對象.事件名 = fucntion () {}, 通過dom對象來反控標(biāo)簽行為。

? ? ? ? 4.事件演示 :?

? ? ? ? ? ? ? ? 1° onload事件

????????onload : 某個頁面或圖像已經(jīng)被加載完畢時,觸發(fā)onload事件。

? ? ? ? ? ? ? ? 代碼演示 :?

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>onload test</title>
    <script type="text/javascript">
        //靜態(tài)注冊 : onload="staticTest()"
        function staticTest() {
            alert("This is static register");
        }

        //動態(tài)注冊
        /*
            (1)JS中,將頁面窗口映射成了window對象;可以使用window對象的函數(shù)和屬性
            (2)window.onload表示頁面被加載完畢
            (3)當(dāng)頁面被加載完畢后,執(zhí)行function中的代碼
         */
        window.onload = function () {
            alert("This is dynamic register...");
        }
    </script>
</head>
<body>
    Cyan_RA9 <br/><br/>
    <input type="text" value="test"/> <br/><br/>
    <textarea style="width: 300px">
        Please input your content:
    </textarea>
</body>
</html>

? ? ? ? ? ? ? ? 運行效果?:?

JavaWeb 速通JavaScript,JavaWeb,# HTML+CSS+JS,javascript,開發(fā)語言,java,Java,后端

? ? ? ? ? ? ? ? 2° onclick事件

????????onclick : 鼠標(biāo)點擊某個對象時觸發(fā)該事件。

? ? ? ? ? ? ? ? 代碼演示 :

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>onclick event test</title>
    <script type="text/javascript">
        //靜態(tài)注冊
        var staticMod = function () {
            alert("Cyan_RA9");
        }

        //動態(tài)注冊
        /*
            (1)先在要獲取DOM對象的HTML元素中添加id屬性,進(jìn)行標(biāo)識
            (2)利用documentDOM對象的getElementById方法,根據(jù)指定的id,來獲取HTML元素對應(yīng)的dom對象
            (3)通過獲取的dom對象動態(tài)地綁定onclick事件
            (4)若頁面未加載完畢就獲取頁面元素的dom對象,結(jié)果為null;因此要配合onload事件,確保成功獲取dom對象
            PS : document的范圍是頁面的主體顯示內(nèi)容。
         */
        window.onload = function () {
            var Button01 = document.getElementById("Button01");
            Button01.onclick = function () {
                alert("Kyrie Irving");
            }
        }
    </script>
</head>
<body>
    <button onclick="staticMod()">點我點我</button>
    <button id = "Button01">別點它,點我</button>
</body>
</html>

? ? ? ? ? ? ? ? 運行效果:(如下GIF圖)

JavaWeb 速通JavaScript,JavaWeb,# HTML+CSS+JS,javascript,開發(fā)語言,java,Java,后端

? ? ? ? ? ? ? ? 3°?onblur事件

????????onblur : 元素失去焦點。

? ? ? ? ? ? ? ? 代碼演示 :?

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>onblur event test</title>
    <style>
        table {
            border: 3px cornflowerblue solid;
            background-color: pink;
        }
    </style>
    <script type="text/javascript">
        //靜態(tài)注冊
        function upperCase() {
            var input_1 = document.getElementById("input_1");
            input_1.value = input_1.value.toUpperCase();        //用大寫后的值覆蓋掉原來的值
        }

        //動態(tài)注冊
        window.onload = function () {
            var input_2 = document.getElementById("input_2");
            input_2.onblur = function () {
                input_2.value = input_2.value.toUpperCase();    //用大寫后的值覆蓋掉原來的值
            }
        }
    </script>
</head>
<body>
    <table>
        <tr>
            <td>Username:</td>
            <td><input type="text" name="test1" id="input_1" onblur="upperCase()"/></td>
        </tr>
        <tr>
            <td>Password:</td>
            <td><input type="text" name="test2" id="input_2"/></td>
        </tr>
    </table>
</body>
</html>

? ? ? ? ? ? ? ? 運行效果:(如下GIF圖)

JavaWeb 速通JavaScript,JavaWeb,# HTML+CSS+JS,javascript,開發(fā)語言,java,Java,后端

? ? ? ? ? ? ? ? 4° onchange事件

????????onchange 內(nèi)容發(fā)生改變事件。

? ? ? ? ? ? ? ? 代碼演示 :?

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>on change test</title>
    <style>
        table,tr,td {
            border: 3px cornflowerblue solid;
            background-color: pink;
        }
    </style>
    <script type="text/javascript">
        var changeInfo = function () {
            alert("你的成績水平發(fā)生了變化~");
        }

        window.onload = function () {
            var sel_2 = document.getElementById("sel_2");
            sel_2.onchange = function () {
                alert("你的健康狀況發(fā)生了變化~");
            }
        }
    </script>
</head>
<body>
    <table>
        <tr>
            <td>你當(dāng)前的成績水平:</td>
            <td><select id="sel_1" onchange="changeInfo()">
                    <option>---成績---</option>
                    <option>優(yōu)</option>
                    <option>良</option>
                    <option>差</option>
                </select></td>
        </tr>
        <tr>
            <td>你當(dāng)前的健康水平:</td>
            <td><select id="sel_2">
                <option>---健康狀況---</option>
                <option>牛逼</option>
                <option>害?</option>
                <option>飛舞</option>
                </select></td>
        </tr>
    </table>
</body>
</html>

? ? ? ? ? ? ? ? 運行效果 : (如下GIF圖)

JavaWeb 速通JavaScript,JavaWeb,# HTML+CSS+JS,javascript,開發(fā)語言,java,Java,后端

? ? ? ? ? ? ? ? 5° onsubmit事件???

????????onsubmit : 注冊按鈕被點擊, 提交表單。

? ? ? ? ? ? ? ? 代碼演示 :?

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>onsubmit test</title>
    <style type="text/css">
        table,tr,td {
            border:2px cornflowerblue solid;
            border-collapse:collapse;
            padding: 10px;
        }
        #td_1,#td_2 {
            text-align: center;
        }
    </style>
    <script type="text/javascript">
        function register() {
            var username = document.getElementById("username");
            var pwd = document.getElementById("pwd");

            if ("" == username.value || "" == pwd.value) {
                alert("Failed to submit --- username or password can't be empty!");
                return false;   //表示不提交
            }
            return true;    //表示提交
        }

        window.onload = function () {
            var form2 = document.getElementById("form2");
            //onsubmit綁定的函數(shù),會直接將結(jié)果(True | false)返回給onsubmit
            form2.onsubmit = function () {
                if ("" == form2.username.value || "" == form2.pwd.value) {
                    alert("Failed to submit --- username or password can't be empty!");
                    return false;
                }
                return true;
            }
        }
    </script>
</head>
<body>
<!--注意:onsubmit事件,必須要有return將事件的結(jié)果返回給onsubmit-->
<form action="ok.html" method="get" onsubmit="return register()">    <!-- 默認(rèn)是get請求的提交方式 -->
    <table>
        <tr>
            <td colspan="2" id="td_1">用戶登錄1</td>
        </tr>
        <tr>
            <td>UserName: </td>
            <td><input type="text" name="username" id = "username"/></td>
        </tr>
        <tr>
            <td>Password: </td>
            <td><input type="password" name="pwd" id = "pwd"/></td>
        </tr>
        <tr>
            <td><input type="submit" value="submit"/></td>
            <td><input type="reset" value="reset"/></td>
        </tr>
    </table>
</form> <br/>
<form action="ok.html" method="get" id="form2">
    <table>
        <tr>
            <td colspan="2" id="td_2">用戶登錄2</td>
        </tr>
        <tr>
            <td>UserName: </td>
            <td><input type="text" name="username"/></td>
        </tr>
        <tr>
            <td>Password: </td>
            <td><input type="password" name="pwd"/></td>
        </tr>
        <tr>
            <td><input type="submit" value="submit"/></td>
            <td><input type="reset" value="reset"/></td>
        </tr>
    </table>
</form>
</body>
</html>

? ? ? ? ? ? ? ? ok.html代碼如下 :?

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>When you log in successfully</title>
    <style>
        span {
            font-weight: bold;
            font-family: consolas;
            font-size: 20px;
        }
    </style>
</head>
<body>
    <span>You did it, MAN!</span>
</body>
</html>

? ? ? ? ? ? ? ? 運行效果:(如下GIF圖)

JavaWeb 速通JavaScript,JavaWeb,# HTML+CSS+JS,javascript,開發(fā)語言,java,Java,后端


八、JavaScript總結(jié)

? ? ? ? 首先需要記住JavaScript這門語言的特點(尤其是弱類型的特點);

? ? ? ? 其次是JS常見的幾種數(shù)據(jù)類型;以及數(shù)組的兩種定義方式;函數(shù)的兩種定義方式;對象的兩種定義方式;事件的分類,動態(tài)注冊事件的步驟,一些常見事件的使用(尤其是onsubmit事件)。

? ? ? ? 以上都應(yīng)該掌握。

? ? ? ? System.out.println("END---------------------------------------------------------------------------------");文章來源地址http://www.zghlxwxcb.cn/news/detail-547105.html

到了這里,關(guān)于JavaWeb 速通JavaScript的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • JavaWeb(1)——HTML、CSS、JS 快速入門

    JavaWeb(1)——HTML、CSS、JS 快速入門

    ????????JavaWeb 是使用 Java 技術(shù)來構(gòu)建 Web 應(yīng)用程序的一種方法。 ????????HTML(超文本標(biāo)記語言,負(fù)責(zé)網(wǎng)頁的結(jié)構(gòu))是一種用于創(chuàng)建網(wǎng)頁結(jié)構(gòu)和內(nèi)容的標(biāo)記語言。它由一系列標(biāo)簽組成,每個標(biāo)簽都有特定的功能。開發(fā)人員可以使用 HTML 來定義頁面的結(jié)構(gòu)、文本、圖像、

    2024年02月15日
    瀏覽(22)
  • JavaWeb(5)——HTML、CSS、JS 快速入門

    JavaWeb(5)——HTML、CSS、JS 快速入門

    目錄 一、JavaScript 對象? 二、JavaScriptBOM對象和DOM對象? 三、JavaScript?事件監(jiān)聽 事件綁定 常見事件 案例練習(xí)? 四、JavaScript?內(nèi)存分配機(jī)制 五、JavaScript 函數(shù)作用域 ?六、JavaScript 函數(shù)構(gòu)造器 ? ?????????所以說對象的賦值(也可以用這種方式查詢)有兩種方式,一個是 .

    2024年02月16日
    瀏覽(21)
  • JavaWeb(2)——HTML、CSS、JS 快速入門

    JavaWeb(2)——HTML、CSS、JS 快速入門

    目錄 一、JavaScript 結(jié)構(gòu)??? 什么是BOM,什么是DOM??? BOM(瀏覽器對象模型 ?????): DOM(文檔對象模型 ??): 總結(jié)下來就是???? : 二、JavaScript 書寫位置??? 三、JavaScript?注釋??? 四、JavaScript 輸入輸出語法???? 五、JavaScript?變量???? 六、JavaScript?變量命名??

    2024年02月15日
    瀏覽(32)
  • JavaWeb(4)——HTML、CSS、JS 快速入門

    JavaWeb(4)——HTML、CSS、JS 快速入門

    ?數(shù)組篩選(查找,將原來數(shù)組中的某些數(shù)據(jù)去除) 數(shù)組篩選(查找,數(shù)組中的最大和最小值) 數(shù)組修改(數(shù)組中每個元素末尾都加新元素) ?數(shù)組修改(數(shù)組中每個元素開頭都加新元素) ?數(shù)組刪除指定元素 冒泡排序 這段代碼實現(xiàn)了一種冒泡排序算法: 首先,定義了一個

    2024年02月17日
    瀏覽(22)
  • JavaWeb(3)——HTML、CSS、JS 快速入門

    JavaWeb(3)——HTML、CSS、JS 快速入門

    ? 賦值運算符( = ) ? 一元運算符 (自增和自減,并明白區(qū)別) 眾多的 JavaScript 的運算符可以根據(jù)所需表達(dá)式的個數(shù),分為一元運算符、二元運算符、三元運算符。而一元、二元和三元運算符是根據(jù)操作數(shù)(表達(dá)式)的個數(shù)來進(jìn)行分類的。 一元運算符只需要一個操作數(shù)。

    2024年02月16日
    瀏覽(21)
  • javaweb個人主頁設(shè)計(html+css+js)

    javaweb個人主頁設(shè)計(html+css+js)

    目錄 1 前言和要求 1.1 前言 1.2 設(shè)計要求 2 預(yù)覽 2.1 主頁頁面 2.2 個人簡介 2.3?個人愛好 2.4?個人成績有代碼,但是圖片已省略,可以根據(jù)自己情況添加 2.5 收藏夾 3 代碼實現(xiàn)? 3.1 主頁 3.2 個人簡介 3.3 個人愛好 3.4 個人成績(根據(jù)自己的情況添加) 3.5 收藏夾 4 可能要用的圖片,

    2024年02月09日
    瀏覽(24)
  • CSS+Javascript+Html日歷控件

    CSS+Javascript+Html日歷控件

    最近,因需要用HTML+JAVASCRIPT+CSS實現(xiàn)了一個日歷控件,效果如下: 單擊上月、下月進(jìn)行日歷切換。當(dāng)前日期在日歷中變顏色標(biāo)注顯示。還是老老套路、老方法,分HML+CSS+JAVASCRIPT三部分代碼。 這段代碼主要包含三個部分,一是頭部顯示年月,上月、下月切換按鈕;二是顯示星期

    2024年02月07日
    瀏覽(18)
  • html +css + JavaScript 期末復(fù)盤

    html +css + JavaScript 期末復(fù)盤

    實驗一中的制作表格代碼(亦可回顧https://blog.csdn.net/qq_52495761/article/details/134759245) 上述的兩種形式都可以實現(xiàn)對div中方文字進(jìn)行渲染 使用標(biāo)簽做外觀渲染的 缺點 : 1)一眼看過去,看到的都是做外觀的標(biāo)簽, 不容易閱讀到正文 2)內(nèi)容和外觀相混合, 無法做到合理分工

    2024年02月02日
    瀏覽(59)
  • HTML+CSS+JavaScript華為主頁

    HTML+CSS+JavaScript華為主頁

    HTML+CSS+JavaScript仿華為首頁

    2024年02月11日
    瀏覽(21)
  • JavaWeb 速通CSS

    JavaWeb 速通CSS

    目錄 一、CSS入門 ? ? ? ? 1.基本介紹 :? ? ? ? ? 2.CSS的作用 :? ? ? ? ? 3.CSS的語法 :? 二、CSS樣式 ? ? ? ? 1.字體顏色: ? ? ? ? ? ? ? ? 1° 說明 ? ? ? ? ? ? ? ? 2° 演示 ? ? ? ? 2.邊框 :? ? ? ? ? ? ? ? ? 1° 說明 ? ? ? ? ? ? ? ? 2° 演示 ? ? ? ? 3.背景顏色 :? ?

    2024年02月13日
    瀏覽(12)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包