Text: splitText() ã¡ã½ãã
Baseline
åºãå©ç¨å¯è½
ãã®æ©è½ã¯åºãå®è£ ããã¦ãããå¤ãã®ãã¼ã¸ã§ã³ã®ç«¯æ«ããã©ã¦ã¶ã¼ã§åä½ãã¾ãã2015å¹´7æä»¥éããã¹ã¦ã®ãã©ã¦ã¶ã¼ã§å©ç¨å¯è½ã§ãã
splitText() 㯠Text ã¤ã³ã¿ã¼ãã§ã¤ã¹ã®ã¡ã½ããã§ããã® Text ãã¼ããæå®ãããªãã»ããã§ 2 ã¤ã«åå²ãã両æ¹ã®ãã¼ããå
å¼ã¨ãã¦ããªã¼ã®ä¸ã«ä¿æãã¾ãã
åå²å¾ãç¾å¨ã®ãã¼ãã«ã¯æå®ãããªãã»ããä½ç½®ã¾ã§ã®ãã¹ã¦ã®ã³ã³ãã³ããè¨å®ãããæ°è¦ä½æãããåã種é¡ã®ãã¼ãã«ã¯æ®ãã®ããã¹ããè¨å®ããã¾ããæ°ãã使ããããã¼ãã¯å¼ã³åºãå ã«è¿ããã¾ãã å ã®ãã¼ãã«è¦ªããã£ãå ´åãæ°ãããã¼ãã¯å ã®ãã¼ãã®æ¬¡ã®å å¼ã¨ãã¦æ¿å ¥ããã¾ãã ãªãã»ãããå ã®ãã¼ãã®é·ãã¨çããå ´åãæ°ãã使ããããã¼ãã«ã¯ãã¼ã¿ãããã¾ããã
åå²ãããããã¹ããã¼ãã¯ã Node.normalize() ã¡ã½ãããç¨ãã¦çµåãããã¨ãã§ãã¾ãã
æ§æ
newNode = textNode.splitText(offset)
弿°
offset-
ããã¹ããã¼ããåå²ããç´åã®ä½ç½®ã
è¿å¤
æ°ããçæããã Text ãã¼ããè¿ããæå®ããããªãã»ããä½ç½®ä»¥éã®ããã¹ããæ ¼ç´ããã¾ãã
ä¾å¤
IndexSizeErrorDOMException-
æå®ããããªãã»ãããè² ã®å¤ã§ãããããã¼ãã®ããã¹ãã® 16 ãããåä½ã®æåæ°ããã大ããå ´åã«çºçãã¾ãã
NoModificationAllowedErrorDOMException-
ãã¼ããèªåå°ç¨ã®å ´åã«çºçãã¾ãã
ä¾
ãã®ä¾ã§ã¯ã <p> ã®ããã¹ãã 2 ã¤ã®ããã¹ããã¼ãã«åå²ããã <u> ããã®éã«æ¿å
¥ããã¾ãã
<p>foobar</p>
const p = document.querySelector("p");
// <p> ã®ä¸èº«ãããã¹ããã¼ãã¨ãã¦åå¾
const foobar = p.firstChild;
// 'foobar' ãäºã¤ã®ããã¹ããã¼ã 'foo' 㨠'bar' ã«åå²ãã
// 'bar' ã const ã¨ãã¦ä¿å
const bar = foobar.splitText(3);
// <u> è¦ç´ ã使ã㦠' new content ' ãå«ãã
const u = document.createElement("u");
u.appendChild(document.createTextNode(" new content "));
// <u> ã 'bar' ã®åã«è¿½å
p.insertBefore(u, bar);
// çµæ: <p>foo<u> new content </u>bar</p>
仿§æ¸
| 仿§æ¸ |
|---|
| DOM > # ref-for-dom-text-splittextâ > |
ãã©ã¦ã¶ã¼ã®äºææ§
é¢é£æ å ±
- æå±å
ã®
Textã¤ã³ã¿ã¼ãã§ã¤ã¹ - éã®ã¡ã½ãã:
Node.normalize