国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

首頁(yè) web前端 js教程 最新整理的JavaScript常見(jiàn)事件類型

最新整理的JavaScript常見(jiàn)事件類型

Aug 10, 2018 pm 05:21 PM
javascript 事件

UI (User Interface) 事件,當(dāng)用戶與頁(yè)面上的元素交互時(shí)觸發(fā)

Load事件:當(dāng)頁(yè)面完全加載后,就會(huì)觸發(fā)window上的load事件。

Unload事件:在文檔被完全卸載后觸發(fā)。只要用戶從一個(gè)頁(yè)面切換到另一個(gè)頁(yè)面,就會(huì)觸發(fā)。

Resize事件:當(dāng)瀏覽器調(diào)整到一個(gè)新的高度或?qū)挾葧r(shí),就會(huì)觸發(fā)resize事件。注意不要在這個(gè)事件中加入計(jì)算邏輯,避免性能問(wèn)題。

        EventUtil.addHandler(window, "resize", function (event) {
                //防抖函數(shù)
                //每次調(diào)用函數(shù)都會(huì)清除之前的計(jì)數(shù)器,并重新計(jì)數(shù),計(jì)數(shù)完成時(shí),執(zhí)行操作。
            var timer;
            return function () {
                if (timer) {
                    clearTimeout(timer);
                }
                timer = setTimeout(function () { //setTimeout返回唯一標(biāo)識(shí)符,可以使用它來(lái)取消計(jì)數(shù)器
                    console.log("123");
                },500);
            }
        }());//此處的雙括號(hào)表示,立即調(diào)用返回值

Scroll事件:當(dāng)用戶滾動(dòng)帶有流動(dòng)條的元素中的內(nèi)容時(shí),在該元素上面觸發(fā)。

        EventUtil.addHandler(window, "scroll", function (event) {
            //函數(shù)節(jié)流
            var timer;
            return function () {
                if (timer) {
                    clearTimeout(timer);
                }
                timer = setTimeout(function () { //setTimeout返回唯一標(biāo)識(shí)符,可以使用它來(lái)取消計(jì)數(shù)器
                    if (document.compatMode == "CSS1Compat") {
                        //標(biāo)準(zhǔn)模式
                        console.log("Left:" + document.documentElement.scrollLeft);
                        console.log("Top:" + document.documentElement.scrollTop);
                    }
                    else {
                        //混雜模式
                        console.log("Left:" + document.body.scrollLeft);
                        console.log("Top:" + document.body.scrollTop);
                    }
                }, 500);
            }     
        }());

焦點(diǎn)事件,在頁(yè)面獲得或失去焦點(diǎn)時(shí)觸發(fā)

Blur事件:在元素失去焦點(diǎn)時(shí)觸發(fā)。這個(gè)事件不會(huì)冒泡;所有瀏覽器都支持它;

Focus事件:在元素獲得焦點(diǎn)時(shí)觸發(fā)。這個(gè)事件不會(huì)冒泡,所有瀏覽器都支持它;

Focusin事件:在元素獲得焦點(diǎn)時(shí)觸發(fā)。 這個(gè)事件與HTML事件focus等價(jià),但它冒泡,支持這個(gè)事件的瀏覽器有IE5+ safari5.1+ Opera11.5+ 和 Chrome;

Focusout事件: 在元素獲得失去時(shí)觸發(fā)。 這個(gè)事件是HTML事件blur的通用版本,,支持這個(gè)事件的瀏覽器有IE5+ safari5.1+ Opera11.5+ 和 Chrome;

鼠標(biāo)與滾輪事件

Click事件:在用戶單機(jī)鼠標(biāo)左鍵或按下回車鍵時(shí)觸發(fā)。

DbClick事件:用戶雙擊鼠標(biāo)左鍵時(shí)觸發(fā)。

MouseDown事件:在用戶按下鼠標(biāo)任意按鈕時(shí)觸發(fā)。

MouseEnter事件:鼠標(biāo)從外部首次移入到元素范圍內(nèi)觸發(fā)。

MouseLeave事件:鼠標(biāo)移出元素范圍之外觸發(fā)。

MouseMove事件:當(dāng)鼠標(biāo)指針在元素內(nèi)部移動(dòng)時(shí)重復(fù)觸發(fā)。

MouseOut事件:在鼠標(biāo)指針位于一個(gè)元素上方,然后用戶將其移入到另一個(gè)元素時(shí)觸發(fā)。

MouseOver事件:在鼠標(biāo)指針位于一個(gè)元素外部,然后用戶將其首次移入到另一個(gè)元素邊界之內(nèi)時(shí)觸發(fā)。

MouseUp:在用戶釋放鼠標(biāo)指針時(shí)觸發(fā)。

幾個(gè)鼠標(biāo)坐標(biāo)位置:

1.客戶區(qū)坐標(biāo)位置

鼠標(biāo)事件都是在瀏覽器視口中的特定位置上發(fā)生的。這個(gè)位置保存在事件對(duì)象的clientX和clientY屬性中。

2.頁(yè)面坐標(biāo)位置

pageX和pageY能告訴你事件是在頁(yè)面中什么位置發(fā)生的。換句話說(shuō),這兩個(gè)屬性表示光標(biāo)在頁(yè)面中的位置,因此坐標(biāo)是從頁(yè)面本身而不是視口左邊或頂邊計(jì)算的。

在頁(yè)面沒(méi)有滾動(dòng)的情況下,pageX和pageY和clientX和clientY是相等的。

IE8及更早的版本不支持頁(yè)面坐標(biāo)位置,不過(guò)可以使用客戶區(qū)坐標(biāo)位置和滾動(dòng)信息計(jì)算出來(lái)。

        EventUtil.addHandler(document.getElementById("p1"), "click", function (event) {
            //兼容IE8及之前版本
            event = EventUtil.getEvent(event);
            var pageX = event.pageX,
                pageY = event.pageY;
            if (pageX === undefined) {
                pageX = event.clientX + (document.body.scrollLeft || document.documentElement.scrollLeft);
            }
            if (pageY === undefined) {
                pageY = event.clientY + (document.body.scrollTop || document.documentElement.scrollTop);
            }
            //console.log("pageX:" + pageX);
            //console.log("pageY:" + pageY);
        });

3.屏幕坐標(biāo)位置

screenX和screenY屬性可以確定鼠標(biāo)事件發(fā)生時(shí)鼠標(biāo)指針相對(duì)于整個(gè)屏幕的坐標(biāo)信息。

相關(guān)推薦:

常見(jiàn)的JavaScript易錯(cuò)知識(shí)點(diǎn)整理

詳解解讀JavaScript中的事件流和事件處理程序(圖文教程)

以上是最新整理的JavaScript常見(jiàn)事件類型的詳細(xì)內(nèi)容。更多信息請(qǐng)關(guān)注PHP中文網(wǎng)其他相關(guān)文章!

本站聲明
本文內(nèi)容由網(wǎng)友自發(fā)貢獻(xiàn),版權(quán)歸原作者所有,本站不承擔(dān)相應(yīng)法律責(zé)任。如您發(fā)現(xiàn)有涉嫌抄襲侵權(quán)的內(nèi)容,請(qǐng)聯(lián)系admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費(fèi)脫衣服圖片

Undresser.AI Undress

Undresser.AI Undress

人工智能驅(qū)動(dòng)的應(yīng)用程序,用于創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用于從照片中去除衣服的在線人工智能工具。

Clothoff.io

Clothoff.io

AI脫衣機(jī)

Video Face Swap

Video Face Swap

使用我們完全免費(fèi)的人工智能換臉工具輕松在任何視頻中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費(fèi)的代碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

功能強(qiáng)大的PHP集成開(kāi)發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺(jué)化網(wǎng)頁(yè)開(kāi)發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級(jí)代碼編輯軟件(SublimeText3)

WebSocket與JavaScript:實(shí)現(xiàn)實(shí)時(shí)監(jiān)控系統(tǒng)的關(guān)鍵技術(shù) WebSocket與JavaScript:實(shí)現(xiàn)實(shí)時(shí)監(jiān)控系統(tǒng)的關(guān)鍵技術(shù) Dec 17, 2023 pm 05:30 PM

WebSocket與JavaScript:實(shí)現(xiàn)實(shí)時(shí)監(jiān)控系統(tǒng)的關(guān)鍵技術(shù)引言:隨著互聯(lián)網(wǎng)技術(shù)的快速發(fā)展,實(shí)時(shí)監(jiān)控系統(tǒng)在各個(gè)領(lǐng)域中得到了廣泛的應(yīng)用。而實(shí)現(xiàn)實(shí)時(shí)監(jiān)控的關(guān)鍵技術(shù)之一就是WebSocket與JavaScript的結(jié)合使用。本文將介紹WebSocket與JavaScript在實(shí)時(shí)監(jiān)控系統(tǒng)中的應(yīng)用,并給出代碼示例,詳細(xì)解釋其實(shí)現(xiàn)原理。一、WebSocket技

如何使用WebSocket和JavaScript實(shí)現(xiàn)在線語(yǔ)音識(shí)別系統(tǒng) 如何使用WebSocket和JavaScript實(shí)現(xiàn)在線語(yǔ)音識(shí)別系統(tǒng) Dec 17, 2023 pm 02:54 PM

如何使用WebSocket和JavaScript實(shí)現(xiàn)在線語(yǔ)音識(shí)別系統(tǒng)引言:隨著科技的不斷發(fā)展,語(yǔ)音識(shí)別技術(shù)已經(jīng)成為了人工智能領(lǐng)域的重要組成部分。而基于WebSocket和JavaScript實(shí)現(xiàn)的在線語(yǔ)音識(shí)別系統(tǒng),具備了低延遲、實(shí)時(shí)性和跨平臺(tái)的特點(diǎn),成為了一種被廣泛應(yīng)用的解決方案。本文將介紹如何使用WebSocket和JavaScript來(lái)實(shí)現(xiàn)在線語(yǔ)音識(shí)別系

如何利用JavaScript和WebSocket實(shí)現(xiàn)實(shí)時(shí)在線點(diǎn)餐系統(tǒng) 如何利用JavaScript和WebSocket實(shí)現(xiàn)實(shí)時(shí)在線點(diǎn)餐系統(tǒng) Dec 17, 2023 pm 12:09 PM

如何利用JavaScript和WebSocket實(shí)現(xiàn)實(shí)時(shí)在線點(diǎn)餐系統(tǒng)介紹:隨著互聯(lián)網(wǎng)的普及和技術(shù)的進(jìn)步,越來(lái)越多的餐廳開(kāi)始提供在線點(diǎn)餐服務(wù)。為了實(shí)現(xiàn)實(shí)時(shí)在線點(diǎn)餐系統(tǒng),我們可以利用JavaScript和WebSocket技術(shù)。WebSocket是一種基于TCP協(xié)議的全雙工通信協(xié)議,可以實(shí)現(xiàn)客戶端與服務(wù)器的實(shí)時(shí)雙向通信。在實(shí)時(shí)在線點(diǎn)餐系統(tǒng)中,當(dāng)用戶選擇菜品并下單

JavaScript和WebSocket:打造高效的實(shí)時(shí)天氣預(yù)報(bào)系統(tǒng) JavaScript和WebSocket:打造高效的實(shí)時(shí)天氣預(yù)報(bào)系統(tǒng) Dec 17, 2023 pm 05:13 PM

JavaScript和WebSocket:打造高效的實(shí)時(shí)天氣預(yù)報(bào)系統(tǒng)引言:如今,天氣預(yù)報(bào)的準(zhǔn)確性對(duì)于日常生活以及決策制定具有重要意義。隨著技術(shù)的發(fā)展,我們可以通過(guò)實(shí)時(shí)獲取天氣數(shù)據(jù)來(lái)提供更準(zhǔn)確可靠的天氣預(yù)報(bào)。在本文中,我們將學(xué)習(xí)如何使用JavaScript和WebSocket技術(shù),來(lái)構(gòu)建一個(gè)高效的實(shí)時(shí)天氣預(yù)報(bào)系統(tǒng)。本文將通過(guò)具體的代碼示例來(lái)展示實(shí)現(xiàn)的過(guò)程。We

如何使用WebSocket和JavaScript實(shí)現(xiàn)在線預(yù)約系統(tǒng) 如何使用WebSocket和JavaScript實(shí)現(xiàn)在線預(yù)約系統(tǒng) Dec 17, 2023 am 09:39 AM

如何使用WebSocket和JavaScript實(shí)現(xiàn)在線預(yù)約系統(tǒng)在當(dāng)今數(shù)字化的時(shí)代,越來(lái)越多的業(yè)務(wù)和服務(wù)都需要提供在線預(yù)約功能。而實(shí)現(xiàn)一個(gè)高效、實(shí)時(shí)的在線預(yù)約系統(tǒng)是至關(guān)重要的。本文將介紹如何使用WebSocket和JavaScript來(lái)實(shí)現(xiàn)一個(gè)在線預(yù)約系統(tǒng),并提供具體的代碼示例。一、什么是WebSocketWebSocket是一種在單個(gè)TCP連接上進(jìn)行全雙工

簡(jiǎn)易JavaScript教程:獲取HTTP狀態(tài)碼的方法 簡(jiǎn)易JavaScript教程:獲取HTTP狀態(tài)碼的方法 Jan 05, 2024 pm 06:08 PM

JavaScript教程:如何獲取HTTP狀態(tài)碼,需要具體代碼示例前言:在Web開(kāi)發(fā)中,經(jīng)常會(huì)涉及到與服務(wù)器進(jìn)行數(shù)據(jù)交互的場(chǎng)景。在與服務(wù)器進(jìn)行通信時(shí),我們經(jīng)常需要獲取返回的HTTP狀態(tài)碼來(lái)判斷操作是否成功,根據(jù)不同的狀態(tài)碼來(lái)進(jìn)行相應(yīng)的處理。本篇文章將教你如何使用JavaScript獲取HTTP狀態(tài)碼,并提供一些實(shí)用的代碼示例。使用XMLHttpRequest

如何在JavaScript中獲取HTTP狀態(tài)碼的簡(jiǎn)單方法 如何在JavaScript中獲取HTTP狀態(tài)碼的簡(jiǎn)單方法 Jan 05, 2024 pm 01:37 PM

JavaScript中的HTTP狀態(tài)碼獲取方法簡(jiǎn)介:在進(jìn)行前端開(kāi)發(fā)中,我們常常需要處理與后端接口的交互,而HTTP狀態(tài)碼就是其中非常重要的一部分。了解和獲取HTTP狀態(tài)碼有助于我們更好地處理接口返回的數(shù)據(jù)。本文將介紹使用JavaScript獲取HTTP狀態(tài)碼的方法,并提供具體代碼示例。一、什么是HTTP狀態(tài)碼HTTP狀態(tài)碼是指當(dāng)瀏覽器向服務(wù)器發(fā)起請(qǐng)求時(shí),服務(wù)

如何使用WebSocket和JavaScript實(shí)現(xiàn)在線協(xié)作編輯器 如何使用WebSocket和JavaScript實(shí)現(xiàn)在線協(xié)作編輯器 Dec 17, 2023 pm 01:37 PM

實(shí)時(shí)協(xié)作編輯器已經(jīng)成為現(xiàn)代web開(kāi)發(fā)的標(biāo)配,特別是在各種團(tuán)隊(duì)協(xié)作、在線文檔編輯和任務(wù)管理的場(chǎng)景下,基于WebSocket的實(shí)時(shí)通信技術(shù)可以提高團(tuán)隊(duì)成員之間的溝通效率和協(xié)作效果。本文將介紹如何使用WebSocket和JavaScript構(gòu)建一個(gè)簡(jiǎn)單的在線協(xié)作編輯器,幫助讀者更好地理解WebSocket的原理和使用方法。理解WebSocket的基本原理WebSo

See all articles