Tout d'abord, vous pouvez mettre le code dans le <head>
si vous le configurez pour s'exécuter au moment de la préparation du document.
Cependant, cela ne fonctionne toujours pas. Vous itérez plus de tous les tags. Y compris <html>
, qui sera le premier sélectionné par $('*')
.
Donc, vous lisez tout le texte à l'intérieur de l'élément <html>
(c'est-à-dire le texte entier du document), faites-y une chaîne de caractères, puis réécrivez-le au html text()
. Remplacer tout le contenu du texte et de l'élément précédent de l'élément <html>
par une seule chaîne de texte simple. Et détruisant ainsi tous les autres éléments de la page. Oops.
Qu'est-ce que vous voulez faire est de trouver tous les nœuds de texte et faire une chaîne séparée remplace sur elle:
$(document).ready(function() {
$('*').each(function() {
for (var i= this.childNodes.length; i-->0;) {
var child= this.childNodes[i];
if (child.nodeType===3) // TEXT_NODE
child.data= child.data.replace(/Respuesta/g, 'Responder');
}
});
});
(Notez qu'il ya encore un tas de cas limites possibles ici avec les champs de formulaire et d'autres éléments où le changement le texte à l'intérieur d'eux peut ne pas faire ce que vous attendez.)
Vous pouvez mettre ce javascript où vous voulez, mais n'oubliez pas _spBodyOnLoadFunctionNames.push ("myFunction") –