Baseline Widely available *
HTML DOM API ç±ä¸ç³»åæ¥å£ç»æï¼å®ä»¬å®ä¹äº HTML 䏿¯ä¸ªå ç´ çåè½ï¼ä»¥åå®ä»¬æä¾èµç任使¯æç±»å忥å£ã
HTML DOM API çåè½å æ¬ï¼
<canvas>
å
ç´ çä¸ä¸æè¿è¡äº¤äºï¼ä¾å¦å¨å
¶ä¸ç»å¶ã<audio>
å <video>
ï¼ã卿¬æä¸ï¼æä»¬å°éç¹å ³æ³¨ä¸ HTML å ç´ äº¤äºç HTML DOM é¨åãå ¶ä»é¢åç讨论ï¼ä¾å¦ææ¾ãWebSocketãWeb Storage çï¼å¯ä»¥å¨è¿äº API çææ¡£ä¸æ¾å°ã
HTML ææ¡£çç»æææ¡£å¯¹è±¡æ¨¡åï¼DOMï¼æ¯ä¸ç§æè¿°ææ¡£ç»æçæ¶æï¼æ¯ä¸ªææ¡£é½ç± Document
æ¥å£çå®ä¾è¡¨ç¤ºãèä¸ä¸ªææ¡£åç±èç¹å±æ¬¡æ ç»æï¼å
¶ä¸æ¯ä¸ªèç¹ï¼é½ä»£è¡¨ææ¡£ä¸å个对象ï¼å¦å
ç´ æææ¬èç¹ï¼çåºæ¬è®°å½ã
èç¹å¯ä»¥ç»ç»ææ¡£ç»æï¼æä¾å°å
¶ä»èç¹åç»ï¼ä»¥åæå»ºå±çº§ç»æçç¹çæ¹æ³ãå
¶ä»èç¹å¯è½ä»£è¡¨ææ¡£çå¯è§ç»ä»¶ãæ¯ä¸ªèç¹é½åºäº Node
æ¥å£ï¼è¯¥æ¥å£æä¾äºè·åæå
³èç¹ä¿¡æ¯ï¼ä»¥åå建ãå é¤åç»ç» DOM ä¸èç¹çæ¹æ³ã
èç¹æ¬èº«ä¸å
å«å®é
æ¾ç¤ºå¨ææ¡£ä¸çå
容ï¼å®ä»¬æ¯ç©ºå®¹å¨ãèç¹åç°è§è§å
容çè½åï¼æ¯ç± Element
æ¥å£å¼å
¥çãä¸ä¸ª Element
对象å®ä¾ï¼ä»£è¡¨çä½¿ç¨ HTML æ SVG ç XML è¯æ±åå»ºçææ¡£ä¸çå个å
ç´ ã
ä¾å¦ï¼èèä¸ä¸ªå å«ä¸¤ä¸ªå ç´ çææ¡£ï¼å ¶ä¸ä¸ä¸ªå ç´ å åµäºå¦å¤ä¸¤ä¸ªå ç´ ï¼
è½ç¶ Document
æ¥å£æ¯ä½ä¸º DOM è§èçä¸é¨åå®ä¹çï¼ä½ HTML è§èæ¾èå¢å¼ºäºå®ï¼æ·»å äºç¹å®äº Web æµè§å¨ä¸ä¸æä¸ï¼ä½¿ç¨ DOM 以å表示 HTML ææ¡£çä¿¡æ¯ã
HTML æ åæ·»å å° Document
ä¸çå
容å
æ¬ï¼
<head>
åå body ä¸å
ç´ çå表ï¼ä»¥åå
å«å¨ææ¡£ä¸çå¾åã龿¥ãèæ¬çå表ãcopy
ãcut
å paste
æä½ãéè¿å¼å
¥ HTMLElement
æ¥å£ï¼Element
æ¥å£è¢«è¿ä¸æ¥è°æ´ä¸ºä¸é¨è¡¨ç¤º HTML å
ç´ ï¼æææ´å
·ä½ç HTML å
ç´ ç±»é½ç»§æ¿èªå®ãè¿æ©å±äº Element
ç±»ï¼ä»¥åå
ç´ èç¹æ·»å äºç¹å®äº HTML çéç¨ç¹æ§ãHTMLElement
æ·»å ç屿§å
æ¬ hidden
å innerText
çã
HTML ææ¡£æ¯ DOM æ ï¼å
¶ä¸æ¯ä¸ªèç¹é½æ¯ä¸ä¸ªç± HTMLElement
æ¥å£è¡¨ç¤ºç HTML å
ç´ ãHTMLElement
ç±»å®ç°äº Node
ï¼å æ¤æ¯ä¸ªå
ç´ ä¹æ¯ä¸ä¸ªèç¹ï¼ä½åè¿æ¥ä¸æç«ï¼ãè¿æ ·ï¼ç± Node
æ¥å£å®ç°çç»æç¹æ§ä¹å¯ç¨äº HTML å
ç´ ä¸ï¼å
许å®ä»¬ç¸äºåµå¥ãå建åå é¤ãç§»å¨çã
HTMLElement
æ¥å£æ¯éç¨çï¼ä½æ¯å®ä»
æä¾ææ HTML å
ç´ å
±æçåè½ï¼ä¾å¦å
ç´ ç IDãåæ ãææå
ç´ ç HTML 代ç ãæ»å¨ä½ç½®çä¿¡æ¯ã
ä¸ºäºæ©å±æ ¸å¿ HTMLElement
æ¥å£çåè½ï¼ä»¥æä¾ç¹å®å
ç´ æéçç¹æ§ï¼HTMLElement
类被åç±»åä»¥æ·»å æéç屿§åæ¹æ³ãä¾å¦ï¼<canvas>
å
ç´ ç±ç±»å为 HTMLCanvasElement
ç对象表示ãHTMLElement
éè¿æ·»å è¯¸å¦ height
ç屿§å getContext()
çæ¹æ³æ¥å¢å¼º HTMLElement
ç±»åï¼ä»èæä¾ç¹å®äº canvas çç¹æ§ã
HTML å ç´ ç±»çæ»ä½ç»§æ¿å ³ç³»å¦ä¸ï¼
å æ¤ï¼å
ç´ ç»§æ¿å
¶ææç¥å
ç屿§åæ¹æ³ãä¾å¦ï¼èè <a>
å
ç´ ï¼å¨ DOM ä¸ç±ç±»å为 HTMLAnchorElement
ç对象表示ãå
ç´ å
æ¬äºè¯¥ç±»ææ¡£ä¸ï¼Anchor
ç¹å®ç屿§åæ¹æ³ãä½ä¹å
æ¬ HTMLElement
ãElement
以å Node
å®ä¹çå
å®¹ï¼æåæ¯ EventTarget
å®ä¹çå
容ã
æ¯ä¸å±çº§é½å®ä¹äºå
ç´ å®ç¨æ§çä¸ä¸ªå
³é®æ¹é¢ãä» Node
å¼å§ï¼è¯¥å
ç´ ç»§æ¿äºæå
³è¯¥å
ç´ è½å¦è¢«å¦ä¸ä¸ªå
ç´ å
å«ï¼ä»¥åèªèº«å
å«å
¶ä»å
ç´ çæ¦å¿µãç¹å«éè¦çæ¯ä» EventTarget
ç»§æ¿çï¼æ¥æ¶åå¤çäºä»¶ï¼å¦é¼ æ ç¹å»ãææ¾åæåäºä»¶çï¼çè½åã
æä¸äºå
ç´ å
·æå
±æ§ï¼å æ¤è¿æä¸ä¸ªé¢å¤çä¸ä»ç±»åãä¾å¦ï¼<audio>
å <video>
å
ç´ é½åç°é³è§é¢åªä½ãç¸åºç HTMLAudioElement
å HTMLVideoElement
ç±»åé½åºäºéç¨ç±»å HTMLMediaElement
ï¼åè
ååºäº HTMLElement
ççãHTMLMediaElement
å®ä¹äºé³é¢åè§é¢å
ç´ ä¹é´å
±åæ¥æçæ¹æ³å屿§ã
è¿äºç¹å®äºå ç´ çæ¥å£ææäºå¤§é¨å HTML DOM APIï¼å¹¶ä¸æ¯æ¬æçéç¹ãè¦äºè§£ DOM çå®é ç»æï¼è¯·åé DOM æ¦è¿°ã
HTML DOM çç®æ åä¼HTML DOM ææ´é²çç¹æ§æ¯ web å¼å人åå·¥å ·ç®±ä¸æå¸¸ç¨ç API ä¹ä¸ãé¤äºæç®åç web åºç¨ç¨åºå¤ï¼å 乿æ web åºç¨ç¨åºé½ä¼ä½¿ç¨ HTML DOM çæäºç¹æ§ã
HTML DOM API æ¥å£HTML DOM API ä¸ç大夿°æ¥å£ï¼å ä¹ä¸å¯¹ä¸å°æ å°å°å个 HTML å ç´ ï¼ææ¯ç±»ä¼¼åè½çå°éå ç´ ç»ãæ¤å¤ï¼HTML DOM API è¿å æ¬ä¸äºæ¥å£åç±»åï¼ä»¥æ¯æ HTML å ç´ æ¥å£ã
HTML å ç´ æ¥å£ Web åºç¨ç¨åºåæµè§å¨éææ¥å£è¿äºæ¥å£æä¾äºè®¿é®å å« HTML çæµè§å¨çªå£åææ¡£çæ¹å¼ï¼ä»¥åè®¿é®æµè§å¨ç¶æãå¯ç¨æä»¶ï¼å¦ææï¼ååç§é ç½®éé¡¹çæ¹å¼ã
åºå¼ç Web åºç¨ç¨åºåæµè§å¨éææ¥å£External
å·²å¼ç¨ApplicationCache
å·²å¼ç¨Plugin
å·²å¼ç¨PluginArray
å·²å¼ç¨è¿äºæ¥å£è¢« HTML ææ¾ API ç¨äºè¡¨ç¤ºå个æä¸ç»å¯æå¨ï¼æå·²æå¨ï¼å ç´ ï¼å¹¶å¤çææ¾è¿ç¨ã
页é¢å岿¥å£History API æ¥å£å è®¸ä½ è®¿é®æå ³æµè§å¨åå²è®°å½çä¿¡æ¯ï¼å¹¶éè¿åå²è®°å½å°æµè§å¨çå½åæ ç¾é¡µååæåå跳转ã
Web ç»ä»¶æ¥å£è¿äºæ¥å£è¢« Web ç»ä»¶ API ç¨äºå建å管çå¯ç¨çèªå®ä¹å ç´ ã
æé¡¹åæ¯ææ¥å£ å±äºå ¶ä» API çæ¥å£æå 个æ¥å£å¨ HTML è§èä¸å¨ææ¯ä¸è¢«å®ä¹ï¼ä½å®é 䏿¯å ¶ä» API çä¸é¨åã
Web Storage æ¥å£Web Storage API æä¾äºç½ç«å¨ç¨æ·è®¾å¤ä¸ä¸´æ¶ææ°¸ä¹ å卿°æ®ä»¥ä¾¿åç»å¤ç¨çè½åã
Web Worker æ¥å£è¿äºæ¥å£è¢« Web Worker API ç¨äºå»ºç« Worker ä¸åºç¨åå ¶å 容交äºçè½åï¼åæ¶ä¹æ¯æçªå£æåºç¨ä¹é´çæ¶æ¯ä¼ éã
BroadcastChannel
DedicatedWorkerGlobalScope
MessageChannel
MessageEvent
MessagePort
SharedWorker
SharedWorkerGlobalScope
Worker
WorkerGlobalScope
WorkerLocation
WorkerNavigator
è¿äºæ¥å£ç± HTML è§èå®ä¹ï¼è¢« WebSocket API 使ç¨ã
Server-sent äºä»¶æ¥å£EventSource
æ¥å£è¡¨ç¤ºåéææ£å¨åé server-sent äºä»¶çæºã
å¨è¿ä¸ªç¤ºä¾ä¸ï¼<input>
å
ç´ ç input
äºä»¶è¢«çå¬ï¼ä»¥ä¾¿æ ¹æ®ç»å®å段å½åæ¯å¦æå¼ï¼æ¥æ´æ°è¡¨åâæäº¤âæé®çç¶æã
const nameField = document.getElementById("userName");
const sendButton = document.getElementById("sendButton");
sendButton.disabled = true;
// [æç¤ºï¼è¿æ¯è¢«ç¦ç¨çï¼å 为å®ä¼å¯¼è´æç« å§ç»å è½½æ¤ç¤ºä¾ï¼å¹¶å°å
¶èç¦åæ»å¨å°è§å¾ä¸]
//nameField.focus();
nameField.addEventListener("input", (event) => {
const elem = event.target;
const valid = elem.value.length != 0;
if (valid && sendButton.disabled) {
sendButton.disabled = false;
} else if (!valid && !sendButton.disabled) {
sendButton.disabled = true;
}
});
è¿æ®µä»£ç ä½¿ç¨ Document
æ¥å£ç getElementById()
æ¹æ³ï¼è·å ID 为 userName
å sendButton
ç <input>
å
ç´ ç DOM 对象ãéè¿è¿äºå¯¹è±¡ï¼æä»¬å¯ä»¥è®¿é®æä¾ä¿¡æ¯ç屿§åæ¹æ³ï¼å¹¶è·å¾å¯¹è¿äºå
ç´ çæ§å¶æã
âåéâæé®ç HTMLInputElement
对象ç disabled
屿§è¢«è®¾ç½®ä¸º true
ï¼è¿å°ç¦ç¨âåéâæé®ï¼ä½¿å
¶æ æ³ç¹å»ãæ¤å¤ï¼éè¿è°ç¨ç»§æ¿èª HTMLElement
ç focus()
æ¹æ³ï¼ç¨æ·åè¾å
¥å段æä¸ºæ´»å¨ç¦ç¹ã
ç¶åè°ç¨ addEventListener()
æ¥ä¸ºç¨æ·åè¾å
¥æ·»å ä¸ä¸ª input
äºä»¶çå¤çå¨ãè¿æ®µä»£ç æ£æµå½åè¾å
¥å¼çé¿åº¦ï¼å¦æå®æ¯é¶ï¼åç¦ç¨âåéâæé®ï¼å¦æå°æªç¦ç¨ï¼ãå¦åï¼è¯¥ä»£ç ç¡®ä¿æé®å·²å¯ç¨ã
æäºè¿ä¸ªè®¾ç½®ï¼åªè¦ç¨æ·åè¾å ¥æ¡ä¸æå¼ï¼âåéâæé®å°±ä¼ä¸ç´å¤äºå¯ç¨ç¶æï¼å½ä¸ºç©ºæ¶åç¦ç¨ã
HTML表åç HTML å¦ä¸ï¼
<p>请æä¾ä»¥ä¸ä¿¡æ¯ãæ æâ*âç项ç®ä¸ºå¿
填项ã</p>
<form action="" method="get">
<p>
<label for="userName" required>ç¨æ·åï¼</label>
<input type="text" id="userName" /> (*)
</p>
<p>
<label for="email">é®ç®±ï¼</label>
<input type="email" id="userEmail" />
</p>
<input type="submit" value="åé" id="sendButton" />
</form>
ç»æ è§è æµè§å¨å
¼å®¹æ§ åè§ åè æå
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4