Bayangkan saya memiliki HTML berikut:
<div><span><b>This is in bold</b></span></div>
Saya ingin mendapatkan HTML untuk div, termasuk div itu sendiri. Element.innerHTML hanya mengembalikan:
<span>...</span>
Ada ide? Terima kasih
javascript
html
dom
Richard H.
sumber
sumber
Penggunaan
outerHTML
:sumber
outerHTML
didukung sejak FF11: developer.mozilla.org/en-US/docs/Web/API/element.outerHTML .Pertama, letakkan elemen yang membungkus
div
pertanyaan, letakkanid
atribut pada elemen dan kemudian gunakangetElementById
di atasnya: setelah Anda mendapatkan lement, lakukan saja 'e.innerHTML` untuk mengambil HTML.<div><span><b>This is in bold</b></span></div>
=>
<div id="wrap"><div><span><b>This is in bold</b></span></div></div>
lalu:
Perhatikan bahwa
outerHTML
tidak kompatibel lintas-browser.sumber
div
pada sup :)document
... lalu di mana, apakah Anda peduli untuk mencerahkan kami semua?Jika Anda ingin jejak ringan, tapi script lagi, dapatkan elemen innerHTML dan hanya membuat dan mengkloning kosong orangtua-
sumber
sumber
karena outerHTML hanya untuk IE, gunakan fungsi ini:
membuat elemen kosong palsu dari tipe induk dan menggunakan innerHTML di atasnya lalu memasang kembali elemen tersebut kembali ke dom normal
sumber
Anda akan menginginkan sesuatu seperti ini untuk menjadi lintas browser.
sumber
element
dari dokumen saat dipanggil, bukan?pertanyaan lama tetapi untuk pendatang baru yang datang:
document.querySelector('div').outerHTML
sumber
definisikan fungsi luarHTML berdasarkan dukungan untuk element.outerHTML:
sumber
sumber