jQuery buscar y reemplazar cadena

Tengo en algún lugar del sitio web un texto específico, digamos "chupetines", y quiero reemplazar todas las apariciones de esta cadena con "malvaviscos". El problema es que no sé dónde está exactamente el texto. Sé que podría hacer algo como:

$(body).html($(body).html().replace('lollypops', 'marshmellows'));

Esto probablemente funcionaría, pero necesito reescribir tan poco HTML como pueda, así que estoy pensando en algo como:

search para la cadena encontrar el elemento padre más cercanorewrite solo el elemento padre más cercano Reemplace esto incluso en los atributos, pero no en todos, por ejemplo, reemplácelo enclass, pero no ensrc

Por ejemplo, tendría una estructura como esta

<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>

En este ejemplo, cada aparición de "piruletas" sería reemplazada, solo<img src="... permanecería igual y los únicos elementos que en realidad serían manipulados serían<a> y ambos<span> s.
¿Alguien sabe cómo hacer esto

Respuestas a la pregunta(4)

Su respuesta a la pregunta