JavaScript 學(xué)習(xí)筆記(十六) js事件
事件對(duì)象里包含三個(gè)方面的信息····回看上一篇內(nèi)容!
事件對(duì)象里的屬性和方法,主要是鼠標(biāo)和鍵盤(pán)的信息。
1. 獲取事件類(lèi)型
事件對(duì)象屬性type
2. 獲取按鍵代碼
事件對(duì)象屬性keyCode:回車(chē)為13,空格為32,后退鍵為8
3. 檢測(cè)Shift、Alt、Ctrl鍵
事件對(duì)象屬性是否被按下:shiftKey、altKey、ctrlKey
4. 獲取客戶(hù)端坐標(biāo)
事件對(duì)象屬性clientX和clientY
5. 獲取屏幕坐標(biāo)
事件對(duì)象屬性screenX和screenY
事件的類(lèi)型
根據(jù)觸發(fā)事件的事物和事件發(fā)生的對(duì)象,可將瀏覽器中發(fā)生的事件分為幾個(gè)類(lèi)型:
一、 鼠標(biāo)事件
每個(gè)鼠標(biāo)事件都會(huì)給以下event對(duì)象的屬性填入值:
1.坐標(biāo)屬性(如clientX 和 client 等)
2.Type屬性
3.Targer(DOM)或serElement(IE)屬性(目標(biāo)對(duì)象屬性)
4.shiftKey、ctrlKey、altKey和metaKey(DOM)屬性
5.button屬性(只在mouse事件中)
(oEvent.target || oEvent.srcElement).id邏輯符或操作符作用于兩個(gè)對(duì)象時(shí),第一個(gè)對(duì)象非空,返回第一個(gè)對(duì)象,否則返回第二個(gè)對(duì)象,這里表示的是引起事件的元素的ID。
二、 鍵盤(pán)事件
Keydown --- 在鍵盤(pán)上按下某按鍵時(shí)發(fā)生。一直按著某鍵,它則會(huì)不斷觸發(fā)。
Keypress --- 按下一個(gè)按鍵,并產(chǎn)生一個(gè)字符時(shí)產(chǎn)生(也就是不管類(lèi)似Shit ctrl alt之類(lèi)的鍵。)一直按鍵時(shí),它會(huì)持續(xù)發(fā)生。
Keyup --- 釋放按著的按鍵時(shí)發(fā)生
1. 事件的屬性
對(duì)每個(gè)鍵盤(pán)事件,會(huì)填入以下的事件屬性:
keyCode屬性(鍵位的ASC碼值)
charCode屬性(僅DOM)
target(DOM)與srcElement(IE)屬性
shiftKey、ctrlKey、altKey和metaKey(DOM)屬性
2.順序
當(dāng)用戶(hù)按一次某字符按鍵時(shí),會(huì)按以下順序發(fā)生事件:
(1)、keydown;
(2)、keypress;
(3)、keyup;
如果用戶(hù)按一次某非字符按鍵(例如shift),會(huì)按以下順序發(fā)生事件:
(1)、keydown;
(2)、keyup;
三、 HTML事件
onload、unload、resize、scroll等事件。
四、 突變事件
文檔或元素元素的子樹(shù)的添加刪除節(jié)點(diǎn),目前還沒(méi)有任何主流瀏覽器實(shí)現(xiàn)了它。
相關(guān)文章
寫(xiě)給想學(xué)習(xí)Javascript的朋友一點(diǎn)學(xué)習(xí)經(jīng)驗(yàn)小結(jié)
今天逛論壇時(shí)看到有朋友問(wèn),是否有專(zhuān)門(mén)教Javascript的學(xué)校,這里想想把自己的一點(diǎn)建議和自己3年來(lái)的前端Javascript開(kāi)發(fā)的經(jīng)驗(yàn)跟大家分享下,也給出幾本個(gè)人認(rèn)為不錯(cuò)的書(shū)來(lái)做為大家學(xué)習(xí)的參考資料。2010-11-11JavaScript入門(mén)教程(10) 認(rèn)識(shí)其他對(duì)象
對(duì)于需要更好的控制html的一些元素,就需要了解這些了。大家知道就行,有需要時(shí)可以再看。2009-01-01Javascript實(shí)例教程(19) 使用HoTMetal(1)
Javascript實(shí)例教程(19) 使用HoTMetal(1)...2006-12-12使用AmplifyJS組件配合JavaScript進(jìn)行編程的指南
這篇文章主要介紹了使用AmplifyJS組件配合JavaScript進(jìn)行編程的指南,AmplifyJS中提供的訂閱功能十分強(qiáng)大,需要的朋友可以參考下2015-07-07Js從頭學(xué)起(基本數(shù)據(jù)類(lèi)型和引用類(lèi)型的參數(shù)傳遞詳細(xì)分析)
Js中所有函數(shù)的參數(shù)傳遞都是按值傳遞的,也就是把函數(shù)外面的值復(fù)制給函數(shù)內(nèi)部的參數(shù),就和把值從一個(gè)變量復(fù)制到另一個(gè)變量一樣。下面舉幾個(gè)特別的例子2012-02-02JavaScript中Array 對(duì)象相關(guān)的幾個(gè)方法
JavaScript中Array 對(duì)象相關(guān)的幾個(gè)方法...2006-12-12actionscript與javascript的區(qū)別
actionscript是flash的腳本語(yǔ)言,目前已經(jīng)由adobe公司升級(jí)到3.0版本,成為了真正意義的oop語(yǔ)言,JavaScript是由netscape工程師設(shè)計(jì)完成的一門(mén)腳本語(yǔ)言,用于web開(kāi)發(fā)的前端腳本2011-05-05