第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

除了 .innerHTML 之外,還有哪些其他選項(xiàng)可以將 Javascript 生成的 HTML

除了 .innerHTML 之外,還有哪些其他選項(xiàng)可以將 Javascript 生成的 HTML

胡子哥哥 2023-01-06 15:24:01
通常的做法是使用 .innerHTML 將動(dòng)態(tài)生成的 HTML 放置在容器元素中。對(duì)于適合頁(yè)面流的靜態(tài)定位元素來說,這在邏輯上是有意義的。如果您正在生成使用 FIXED 定位的 HTML 元素怎么辦?是否需要?jiǎng)?chuàng)建占位符元素并使用 placeholder.innerHTML 將生成的元素插入到 DOM 中?使用占位符似乎有點(diǎn)違反直覺,因?yàn)樾碌?HTML 實(shí)際上不會(huì)顯示在呈現(xiàn)的文檔流中的那個(gè)位置。此外,如果您生成大量固定元素,是否會(huì)對(duì)性能產(chǎn)生影響?有沒有更快的方法告訴瀏覽器“這是我想要在其他所有元素之上的固定位置呈現(xiàn)的元素?!?nbsp;?
查看完整描述

2 回答

?
海綿寶寶撒

TA貢獻(xiàn)1809條經(jīng)驗(yàn) 獲得超8個(gè)贊

幸運(yùn)的是,Discord 上有人提供了答案??磥砦覇栧e(cuò)了問題。我需要使用 innerHTML,但我可以在正文上將其作為附加而不是覆蓋占位符容器中的 innerHTML。

document.body.innerHTML += someHtml;

這會(huì)將 html 附加到文檔的末尾,從而消除了對(duì)容器的需要并暗示了意圖。

沒有提及不修改 DOM 的性能或替代方案,但我懷疑這種方法已經(jīng)很好了。


查看完整回答
反對(duì) 回復(fù) 2023-01-06
?
回首憶惘然

TA貢獻(xiàn)1847條經(jīng)驗(yàn) 獲得超11個(gè)贊

你可以使用insertAdjacentHTML()方法。


document.querySelector('div').insertAdjacentHTML('beforebegin', 'beforebegin')


document.querySelector('div').insertAdjacentHTML('afterbegin', 'afterbegin')


document.querySelector('div').insertAdjacentHTML('beforeend', 'beforeend')


document.querySelector('div').insertAdjacentHTML('afterend', 'afterend')

<div style='border: solid 1px red'>

  <br>

  Some text

  <br>

</div>


或者,您也可以appendChild()像這樣使用文本節(jié)點(diǎn):


var txt = document.createTextNode('Some more text')


document.querySelector('div').appendChild(txt)

<div>

  Some text

  <br>

</div>


查看完整回答
反對(duì) 回復(fù) 2023-01-06
  • 2 回答
  • 0 關(guān)注
  • 192 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)