Greasemonkey: Changer le texte dans une page Web?
-
22-07-2019 - |
Question
J'ai utilisé la fonction:
document.getElementsByTagName('strong')
pour obtenir tout le texte d'une page avec ce type de formatage. Le code HTML ressemble à:
<td align="center" valign="bottom"><H1><font size="+4"><strong>TEXT_HERE</strong></font> <br>
Je souhaite modifier " TEXT_HERE " peut-être quelque chose d'autre ou supprimer tout cela ensemble. Comment pourrais-je m'y prendre?
Merci d'avance pour votre aide:)
La solution
Avec une boucle for??
var strongElems = document.getElementsByTagName('strong');
var wantToHide = true || false;
for (var i=0; i<strongElems.length; i++)
{
var thisElem = strongElems[i];
if (wantToHide)
{
thisElem.style.display = "none"; // hide it
}
else
{
thisElem.textContent = "something else"; // change it
}
}
Autres conseils
// ==UserScript==
// @name MyScript
// @namespace http://example.com
// @description Example
// @include *
//
// @require http://ajax.googleapis.com/ajax/libs/jquery/1.3.1/jquery.min.js
// ==/UserScript==
var shouldHide = false;
$('strong').each(function() {
if(shouldHide) {
$(this).hide();
} else {
$(this).text("New Text");
}
});
Lorsque je souhaitais modifier du texte dans une page Web, j’ai fondé ma solution Greasemonkey sur DumbQuotes . J'ai aimé pouvoir définir facilement les paires de remplacement dans une liste:
replacements = {
"old": "new",
"foo": "bar",
};
Cela dit, je vais également vérifier la solution de Tomalak. Merci d’avoir posté cette question.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow