Maison > Questions et réponses > le corps du texte
Je ne connais pas JavaScript et HTML. Mais j'essaie d'implémenter une fonction en utilisant JavaScript.
Je souhaite remplacer tous les <em>
和</em>
dans la page html. J'ai donc inséré un bout de code javascript dans la page :
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>
Le succès ne changera <em>
替换为“_”,但所有</em>
rien. Y a-t-il un problème avec le code ?
Merci!
P粉9261742882024-03-31 12:56:14
Voyons ce qui se passe lorsque le navigateur voit du code HTML invalide, par exemple :
test
console.log(document.body.innerHTML)
test
Imprimer ci-dessus test
(et script)
Cela est dû au fait que le navigateur supprime les structures invalides lors de l'analyse
Quand tu fais ça
document.body.innerHTML = document.body.innerHTML .replaceAll("", "_");
Vous avez remplacé toutes les balises <em>
correctement, mais la balise de fermeture a été supprimée
D'un autre côté, cela fonctionnera aussi :
document.body.innerHTML = document.body.innerHTML
.replaceAll("", "_")
.replaceAll("", "_");
test