cari

Rumah  >  Soal Jawab  >  teks badan

ReplaceAll() dalam JavaScript tidak ditemui dalam halaman HTML </em>

Saya tidak biasa dengan JavaScript dan html. Tetapi saya cuba melaksanakan fungsi menggunakan JavaScript.

Saya mahu menggantikan semua <em></em> ​​dalam halaman html. Jadi saya memasukkan sekeping kod javascript ke dalam halaman:

function rep() 
{
    document.body.innerHTML
        = document.body.innerHTML
        .replaceAll("<em>", "_");
    document.body.innerHTML
        = document.body.innerHTML
        .replaceAll("</em>", "_");

}
window.onload=rep()
<!DOCTYPE html>
<html lang="en">
<!-- ... -->
<article>
    <div class="container">
        <div class="row">
            <div class="col-lg-8 col-lg-offset-2 col-md-10 col-md-offset-1 post-container">

                <p>(Weierstrass) 设 $z_{0}$ 是 $f$ 的本性奇点,那么对任意 $A \in \mathbb{C}<em>{\infty}$, 必存在趋于 $z</em>{0}$ 的点列 $\left{z_{n}\right}$, 使得 $\lim <em>{n \rightarrow \infty} f\left(z</em>{n}\right)=A$.</p>

            </div>
        </div>
    </div>
<!-- ... -->

</html>

Kejayaan akan <em>替换为“_”,但所有</em>tidak mengubah apa-apa. Adakah terdapat apa-apa yang salah dengan kod? Terima kasih!

P粉323224129P粉323224129314 hari yang lalu477

membalas semua(1)saya akan balas

  • P粉926174288

    P粉9261742882024-03-31 12:56:14

    Mari lihat apa yang berlaku apabila penyemak imbas melihat html tidak sah, contohnya:

    test

    console.log(document.body.innerHTML)
    test

    Cetak di atas test (dan skrip)

    Ini kerana penyemak imbas mengalih keluar struktur yang tidak sah semasa menghurai

    Apabila anda melakukan ini

    document.body.innerHTML
      = document.body.innerHTML
      .replaceAll("", "_");

    Anda telah menggantikan semua <em> ​​teg dengan betul, tetapi teg penutup telah dialih keluar

    Sebaliknya, ini juga akan berkesan:

    document.body.innerHTML = document.body.innerHTML
      .replaceAll("", "_")
      .replaceAll("", "_");
    test

    balas
    0
  • Batalbalas