最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

DOM基礎(chǔ)教程之事件類型

 更新時間:2015年01月20日 15:33:27   投稿:hebedich  
這篇文章主要介紹了DOM基礎(chǔ)教程之事件類型的相關(guān)資料,需要的朋友可以參考下

對于用戶事件類型而言,最常用的是鼠標(biāo)、鍵盤、瀏覽器。

1.鼠標(biāo)事件:

鼠標(biāo)的事件都頻繁使用,下面例子就測試各種鼠標(biāo)事件

復(fù)制代碼 代碼如下:

<script language="javascript">
            function handle(oEvent) {
                var disp = document.getElementById("display");
                if (window.event) oEvent = window.event; //處理兼容性,獲得對象
                disp.innerHTML += "鼠標(biāo)事件名稱:" + oEvent.type + "<br>";
            }
            window.onload = function() {
                var oP = document.getElementById("box");
                oP.onmousedown = handle;
                oP.onmouseover = handle;
                oP.onmouseup = handle;
                oP.onmouseout = handle;
                oP.onclick = handle;
                oP.ondblclick = handle;
            }
        </script>
        <div>
            <div id="box" style="width:100px;height:100px;background:#ddd;">
                box內(nèi)容
            </div>
            <p id="display"></p>
        </div>

鼠標(biāo)的鍵值button測試(附對照表)

復(fù)制代碼 代碼如下:

<script language="javascript">
            function TestClick(oEvent) {
                var oDiv = document.getElementById("display");
                if (window.event)
                    oEvent = window.event;
                oDiv.innerHTML += oEvent.button; //輸出button的值
            }
            document.onmousedown = TestClick;
            window.onload = TestClick; //測試未按下任何鍵
        </script>
        <div>
            <p id="display"></p>
        </div>

2.鍵盤事件

鍵盤事件種類不多,僅三種事件。

keydown(按下某鍵,一直按住會持續(xù)觸發(fā))

keypress(按下某鍵并產(chǎn)生字符時觸發(fā),即忽略Shift、Alt,ctrl等功能鍵)

keyup(釋放某個鍵時觸發(fā))

鍵盤監(jiān)聽示例:

復(fù)制代碼 代碼如下:

<script language="javascript">
            function handle(oEvent) {
                if (window.event) oEvent = window.event; //處理兼容性,獲得事件對象
                var oDiv = document.getElementById("display");
                oDiv.innerHTML += oEvent.type + "&nbsp;"; //輸出事件名稱
            }
            window.onload = function() {
                var oTextArea = document.getElementById("textin");
                oTextArea.onkeydown = handle; //監(jiān)聽所有鍵盤事件
                oTextArea.onkeyup = handle;
                oTextArea.onkeypress = handle;
            }
        </script>
        <div>
            <textarea rows="4" cols="50" id="textin">
            </textarea>
            <p id="display"></p>
        </div>

對于鍵盤而言,最重要的不是事件的名稱,而是所按的是什么鍵。由于ie沒有charCode屬性,而keyCode只有在keydown、keyup事件發(fā)生的時才與標(biāo)準(zhǔn)dom的keycode相同,

在keypress事件中等同于keycode,因此采用以下方法。

復(fù)制代碼 代碼如下:
oEvent.charCode = (oEvent.type == "keypress")?oEvent.keycode:();

之所以不采用keyCode是因為它表示鍵盤按鍵,而不是輸出的字符,因此,輸出“a”和“A”,keycode是等值的,charcode則以字符區(qū)分。

另外在keypress中,標(biāo)準(zhǔn)dom的keycode值始終為0;

例子:鍵盤事件的相關(guān)屬性:

復(fù)制代碼 代碼如下:

<script language="javascript">
            function handle(oEvent) {
                var oDiv = document.getElementById("display");
                if (window.event) oEvent = window.event; //處理兼容性,獲得事件對象
                //設(shè)置ie charcode的值
                oEvent.charCode = (oEvent.type == "keypress") ? oEvent.keyCode : 0;
                oDiv.innerHTML += oEvent.type + ":charCode" + oEvent.charCode + "keyCode" + oEvent.keyCode + "<br>"; //輸出測試
            }
            window.onload = function() {
                var oTextArea = document.getElementById("textin");
                oTextArea.onkeydown = handle; //監(jiān)聽所有鍵盤事件
                oTextArea.onkeypress = handle;
            }
        </script>
        <div>
            <textarea rows="4" cols="50" id="textin">
            </textarea>
            <p id="display"></p>
        </div>

3.htm事件

對于瀏覽器而言,各種html有著自己的事件,有一些也是用戶常常接觸到的,比如load,error,select等,常用的html事件如下:

load事件是常用的事件之一,因為在頁面載入完成之前,dom的框架還沒有搭建完成,因此任何相關(guān)操作都不能發(fā)生。

給window對象分配load,unload事件等同于<body>標(biāo)記的onload和onunload方法。

相關(guān)文章

  • Javascript中this的用法詳解

    Javascript中this的用法詳解

    本文主要是重新回顧一下自己關(guān)于this的理解,發(fā)現(xiàn)自己的理解確實是有些偏差的,記錄一下,希望對大家有所幫助
    2014-09-09
  • JavaScript的類型簡單說明

    JavaScript的類型簡單說明

    JavaScript變量有2中類型:原始類型和引用值類型。
    2010-09-09
  • 深入理解JavaScript 箭頭函數(shù)

    深入理解JavaScript 箭頭函數(shù)

    ES6標(biāo)準(zhǔn)新增了一種新的函數(shù):Arrow Function(箭頭函數(shù))。為什么叫Arrow Function?因為它的定義用的就是一個箭頭。下面我們來一起學(xué)習(xí)一下吧
    2019-05-05
  • 淺談javascript 迭代方法

    淺談javascript 迭代方法

    這篇文章主要介紹了淺談javascript 迭代方法的相關(guān)資料,需要的朋友可以參考下
    2015-01-01
  • 了解重排與重繪

    了解重排與重繪

    重繪和重排操作都是代價昂貴的操作,它們會導(dǎo)致web應(yīng)用程序的UI反應(yīng)遲鈍,所以應(yīng)該盡可能減少這類過程的發(fā)生。下面我們來簡單了解一下
    2019-05-05
  • JavaScript中用toString()方法返回時間為字符串

    JavaScript中用toString()方法返回時間為字符串

    這篇文章主要介紹了JavaScript中用toString()方法返回時間為字符串的方法,是JS入門學(xué)習(xí)中的基礎(chǔ)知識,需要的朋友可以參考下
    2015-06-06
  • 簡單的ajax連接庫分享(不用jquery的ajax)

    簡單的ajax連接庫分享(不用jquery的ajax)

    自己寫了一個簡單的ajax連接庫,沒有使用jquery的ajax,這個代碼要比jquery輕量,大家參考使用吧,
    2014-01-01
  • Javascript學(xué)習(xí)筆記7 原型鏈的原理

    Javascript學(xué)習(xí)筆記7 原型鏈的原理

    說到prototype,就不得不先說下new的過程。
    2010-01-01
  • JS創(chuàng)建事件的三種方法(實例代碼)

    JS創(chuàng)建事件的三種方法(實例代碼)

    下面小編就為大家?guī)硪黄狫S創(chuàng)建事件的三種方法(實例代碼)。小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-05-05
  • js獲取單選框或復(fù)選框值及操作

    js獲取單選框或復(fù)選框值及操作

    在實際應(yīng)用中,偶爾會用到復(fù)選框checkbox的值,那么如何獲取它的值呢?本文接下來會介紹使用js獲取復(fù)選框值,需要的朋友可以了解下
    2012-12-12

最新評論

谷城县| 叙永县| 中阳县| 房产| 高邮市| 旺苍县| 阳信县| 宝丰县| 浠水县| 光山县| 平远县| 云安县| 囊谦县| 乌拉特后旗| 子洲县| 会宁县| 哈巴河县| 调兵山市| 杭锦旗| 贵南县| 乐昌市| 泌阳县| 霍林郭勒市| 汕尾市| 兴安盟| 隆林| 永福县| 鄂托克前旗| 凌海市| 达州市| 遂昌县| 佛山市| 丰县| 皋兰县| 兴国县| 临潭县| 扬中市| 剑川县| 南陵县| 广安市| 顺平县|