HTMLInputElementï¼setSelectionRange() æ¹æ³
åºçº¿
广æ³å¯ç¨
èª 2015å¹´7æ èµ·ï¼æ¤ç¹æ§å·²å¨ä¸»æµæµè§å¨ä¸å¾å°æ¯æï¼å¯å¨å¤§å¤æ°è®¾å¤åæµè§å¨çæ¬ä¸æ£å¸¸ä½¿ç¨ã
HTMLInputElement.setSelectionRange æ¹æ³ç¨äºè®¾å® <input> æ <textarea> å
ç´ ä¸å½åé䏿æ¬çèµ·å§åç»æä½ç½®ã
该å ç´ å¿ é¡»è·å¾ç¦ç¹æè½ä½¿è°ç¨äº§ç任使æã
å¯éå°ï¼ä½ å¯ä»¥æå®éæ©åºåççæ¹åãä¾å¦ï¼è¿ä½¿ä½ å¯ä»¥æç¤ºï¼éæ©æ¯ç±ç¨æ·ä»é宿æ¬çæ«å°¾åå¼å¤´å¤ç¹å»å¹¶æå¨è®¾ç½®çã
æ¯æ¬¡è°ç¨è¿ä¸ªè¿ä¸ªæ¹æ³é½ä¼æ´æ° HTMLInputElement.selectionStartãHTMLInputElement.selectionEnd å HTMLInputElement.selectionDirection 屿§ã
该å
ç´ å¿
é¡»æ¯ä»¥ä¸è¾å
¥ç±»åä¹ä¸ï¼passwordãsearchãtelãtext æ urlãå¦åï¼æµè§å¨ä¼æåº InvalidStateError å¼å¸¸ã
å¦æä½ å¸æå ¨éè¾å ¥å ç´ ä¸çææ¬ï¼ä½ å¯ä»¥ä½¿ç¨ HTMLInputElement.select() æ¹æ³ã
è¯æ³
setSelectionRange(selectionStart, selectionEnd)
setSelectionRange(selectionStart, selectionEnd, selectionDirection)
åæ°
妿 selectionEnd å°äº selectionStartï¼åäºè
é½ä¼è¢«çä½ selectionEndã
selectionStart-
被éä¸ç第ä¸ä¸ªå符çä½ç½®ç´¢å¼ï¼ä» 0 å¼å§ã妿è¿ä¸ªå¼æ¯å ç´ ç value é¿åº¦è¿å¤§ï¼åä¼è¢«çä½ value æåä¸ä¸ªä½ç½®çç´¢å¼ã
selectionEnd-
被éä¸çæåä¸ä¸ªå符çä¸ä¸ä¸ªä½ç½®ç´¢å¼ï¼ä» 0 å¼å§ã妿è¿ä¸ªå¼æ¯å ç´ ç value é¿åº¦è¿å¤§ï¼åä¼è¢«çä½ value æåä¸ä¸ªä½ç½®çç´¢å¼ã
selectionDirectionå¯é-
ä¸ä¸ªè¡¨ç¤ºéæ©æ¹åçå符串ï¼å¯è½ç弿ï¼
"forward""backward""none"é»è®¤å¼ï¼è¡¨ç¤ºæ¹åæªç¥æä¸ç¸å ³ã
è¿åå¼
æ (undefined)ã
å¼å¸¸
示ä¾
å¨è¿ä¸ªç¤ºä¾ä¸ï¼æä¸æé®ä»¥éæ©ææ¬æ¡ä¸ç¬¬ä¸ãåãäºä¸ªå符ï¼å³âMozillaâä¸çâzilâï¼ã
HTML
<input type="text" id="text-box" size="20" value="Mozilla" />
<button onclick="selectText()">éæ©ææ¬</button>
JavaScript
function selectText() {
const input = document.getElementById("text-box");
input.focus();
input.setSelectionRange(2, 5);
}
ç»æ
è§è
| è§è |
|---|
| HTML> # dom-textarea/input-setselectionrange-dev> |