Ho da qualche parte sul sito web un testo specifico, diciamo "lollypops", e voglio sostituire tutte le occorrenze di questa stringa con "marshmellows". Il problema è che non so dove sia esattamente il testo. So che potrei fare qualcosa del tipo:
$(body).html($(body).html().replace('lollypops', 'marshmellows'));
Probabilmente funzionerebbe, ma ho bisogno di riscrivere meno HTML possibile, quindi sto pensando qualcosa del tipo:
- cerca la stringa
- trova l'elemento genitore più vicino
- riscrive solo l'elemento genitore più vicino
- sostituiscilo anche negli attributi, ma non in tutti, ad esempio sostituiscilo in
class
, ma non insrc
Ad esempio, avrei una struttura come questa
<body>
<div>
<div>
<p>
<h1>
<a>lollypops</a>
</h1>
</p>
<span>lollypops</span>
</div>
</div>
<p>
<span class="lollypops">Hello, World!</span>
<img src="/lollypops.jpg" alt="Cool image" />
</p>
<body>
In questo esempio, ogni occorrenza di "lecca lecca" verrebbe sostituita, <img src="...
rimarrebbe la stessa e gli unici elementi che verrebbero effettivamente manipolati sarebbero <a>
ed entrambi <span>
.
Qualcuno sa come si fa questo?