DOM扩展------插入标记
/** 这些插入标签的方法还有个特点,可以将字符串解析成DOM树。 如果插入<p>test</p>,页面上会形成HTML标签。 */ /** innerHTML 1.读:读取指定对象中的内容。 2.写:如果指定对象无内容,就插入;如果有内容,就替换掉。 */ element.innerHTML("Hello World!"); /** outerHTML 1.读:读取包括指定对象在内和对象里面的所有内容。 2.写:包括指定对象及其内容在内的所有内容替换掉。 */ element.outerHTML(<p>Hello World!</p>); /** insertAdjacentHTML,感觉像自定位置的插入标签,因为不会出现替换的效果(没有读只有写)。 1.insertAdjacentHTML(参数1,参数2);,参数1是插入的位置,参数2是要出入的字符串。 2.参数1的属性分为:beforebegin、afterbegin、beforeend、afterend。 3.写:在指定位置插入。 */ //作为前一个同辈元素插入 element.insertAdjacentHTML("beforebegin", "<p>Hello world!</p>"); //作为第一个子元素插入 element.insertAdjacentHTML("afterbegin", "<p>Hello world!</p>"); //作为最后一个子元素插入 element.insertAdjacentHTML("beforeend", "<p>Hello world!</p>"); //作为后一个同辈元素插入 element.insertAdjacentHTML("afterend", "<p>Hello world!</p>"); /** innerText:插入文本 1.读和写都只有文本,没有html标签 */ //读 <div id="content"> <p>This is a <strong>paragraph</strong> with a list following it.</p> <ul> <li>Item 1</li> <li>Item 2</li> <li>Item 3</li> </ul> </div> /** 对于这个例子中的<div>元素而言,其innerText 属性会返回下列字符串: This is a paragraph with a list following it. Item 1 Item 2 Item 3 */ //写 div.innerText = "Hello world!"; /** 执行这行代码后,页面的HTML 代码就会变成如下所示。 <div id="content">Hello world!</div> */ /** outerText,跟outerHTML很类似,但是性质跟innerText一样,都只针对文本。 */ div.outerText = "Hello world!"; //这行代码实际上相当于如下两行代码: var text = document.createTextNode("Hello world!"); div.parentNode.replaceChild(text, div);
相关推荐
Kakoola 2020-07-29
Yakamoz 2020-05-26
星星有所不知 2020-10-12
zuncle 2020-09-28
huaoa 2020-09-14
北京老苏 2020-08-17
luvhl 2020-08-17
drdrsky 2020-07-29
书虫媛 2020-07-08
liaoxuewu 2020-07-08
SIMONDOMAIN 2020-07-08
爱读书的旅行者 2020-07-07
tianzyc 2020-07-04
Vue和React是数据驱动视图,如何有效控制DOM操作?能不能把计算,更多的转移为js计算?因为js执行速度很快。patch函数-->patch,对比tag,对比tag与key,对比children
Lophole 2020-07-04
Lophole 2020-06-28
liaoxuewu 2020-06-26
ApeLife技术 2020-06-26
北京老苏 2020-06-25