Selectionï¼modify() æ¹æ³
åºçº¿
广æ³å¯ç¨
èª 2020å¹´1æ èµ·ï¼æ¤ç¹æ§å·²å¨ä¸»æµæµè§å¨ä¸å¾å°æ¯æï¼å¯å¨å¤§å¤æ°è®¾å¤åæµè§å¨çæ¬ä¸æ£å¸¸ä½¿ç¨ã
Selection.modify() æ¹æ³ä¼ä½¿ç¨ä¸äºç®åçææ¬å½ä»¤ï¼å¯¹å½åçéåºæå
æ ä½ç½®è¿è¡ä¿®æ¹ã
è¯æ³
modify(alter, direction, granularity)
åæ°
alter-
è¦åºç¨çæ´æ¹ç±»åãæå®
"move"表示移å¨å½åçå æ ä½ç½®ï¼ææå®"extend"表示æ©å±å½åçéåºã direction-
ç¨äºè°æ´å½åéåºçæ¹åãä½ å¯ä»¥æå®
"forward"æ"backward"ï¼æ ¹æ®éåºæå¨ä½ç½®çè¯è¨æ¹åæ¥è¿è¡ç¸åºçè°æ´ï¼å¦ææ³è¦ææå®çç©çæ¹åè°æ´ï¼åå¯ä»¥æå®"left"æ"right"ã granularity-
ç¨äºè°æ´å½åéåºæå æ ä½ç½®çè·ç¦»ãå¯ä»¥æ
"character"ã"word"ã"sentence"ã"line"ã"paragraph"ã"lineboundary"ã"sentenceboundary"ã"paragraphboundary"æ"documentboundary"æ¥è¿è¡ç§»å¨ã
夿³¨ï¼Firefox 䏿¯æ "sentence"ã"paragraph"ã"sentenceboundary"ã"paragraphboundary" æ "documentboundary"ãè WebKit å Blink 忝æè¿äºé项ã
夿³¨ï¼ä» Firefox 5 å¼å§ï¼"word" è¿ä¸ç²åº¦ä¸åå
å«å
¶åçç©ºæ ¼ï¼èä¸ååå¹³å°é»è®¤è¡ä¸ºçå½±åãè¿æ ·å使è¡ä¸ºæ´å ä¸è´ï¼ä¹è®©å®ä¸ WebKit è¿å»çå®ç°æ¹å¼ä¿æä¸è´ï¼ä¸è¿éæ¾çæ¯ï¼WebKit æè¿å·²ç»æ´æ¹äºä»ä»¬çå®ç°è¡ä¸ºã
è¿åå¼
æ ï¼undefinedï¼ã
示ä¾
è¿ä¸ªç¤ºä¾æ¼ç¤ºäºç¨äºä¿®æ¹éåºçåç§ granularity é项ã请å
å¨ç¤ºä¾ä¸ä»»æä½ç½®ç¹å»ï¼ä¹å¯ä»¥å
éä¸ä¸äºææ¬ï¼ï¼ç¶åç¹å»æé®æ¥æ©å±éåºã
HTML
<p>å¨è¿ä¸ªç¤ºä¾ä¸ä»»æä½ç½®ç¹å»ãç¶åç¹å»ä¸é¢çæé®æ¥æ©å±éåºï¼ççä¼åçä»ä¹ï¼</p>
<p>
å¾®é£ç©¿è¿æ 梢ï¼é³å
å¨å°é¢æä¸æé©³çå½±åãè¿å¤çè¡éä¸ä¼ æ¥é¶æçèæ¥å£°ï¼æ¶é´ä»¿ä½å¨è¿ä¸å»æ
¢äºä¸æ¥ã人们å¨åèªççæ´»ä¸åè¡ï¼æäººåå¿ï¼æäººé©»è¶³ï¼ä½ä¸ç便§æç
§èªå·±çèå¥ç¼ç¼æµå¨ã
</p>
<label for="granularity">ç²åº¦ï¼</label>
<select id="granularity">
<option value="character">å符</option>
<option value="word">åè¯</option>
<option value="sentence">å¥å</option>
<option value="line">è¡</option>
<option value="paragraph">段è½</option>
<option value="lineboundary">è¡è¾¹ç</option>
<option value="sentenceboundary">å¥åè¾¹ç</option>
<option value="paragraphboundary">段è½è¾¹ç</option>
<option value="documentboundary">ææ¡£è¾¹ç</option>
</select>
<br /><br />
<button>æ©å±éåº</button>
JavaScript
let select = document.querySelector("select");
let button = document.querySelector("button");
button.addEventListener("click", modify);
function modify() {
let selection = window.getSelection();
selection.modify("extend", "forward", select.value);
}
ç»æ
è§è
| è§è |
|---|
| Selection API > # dom-selection-modify > |
æµè§å¨å ¼å®¹æ§
åè§
- æå±ç
Selectionæ¥å£ã