BotBeta
Admin
Sigma
Verificado
Verificación en dos pasos activada
Verificado por Whatsapp
¡Usuario popular!
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Suscripción a IA
- Desde
- 13 Jun 2020
- Mensajes
- 34.866
Claro, aquí tienes cómo podrías combinar el código anterior con un Observador de Mutaciones para verificar también los nuevos nodos que se agregan al documento:podrias hacerlo porfa
JavaScript:
let domain = "dominio.com"; // la cadena que vas a buscar
// Función para encontrar el primer padre con un ID o una clase
function findParentWithIdOrClass(node) {
while (node.parentNode) {
node = node.parentNode;
if (node.id || node.className) {
return node;
}
}
return null;
}
// Comprueba cada nodo de texto en el documento
function checkNode(node) {
if (node.nodeType === Node.TEXT_NODE && node.textContent.includes(domain)) {
let parent = findParentWithIdOrClass(node);
if (parent) {
console.log("Se encontró 'dominio.com' en un nodo con padre: ", parent);
}
} else {
node.childNodes.forEach(checkNode);
}
}
// Inicializa el Observador de Mutaciones
const observer = new MutationObserver((mutations) => {
mutations.forEach((mutation) => {
if (mutation.addedNodes.length) {
mutation.addedNodes.forEach(checkNode);
}
});
});
// Observa todo el documento para detectar la adición de nodos
observer.observe(document, { childList: true, subtree: true });
// Revisa los nodos existentes
checkNode(document.body);