1. function replaceValues(element, replacements) {
  2. if (!element || typeof element !== 'object') {
  3. return;
  4. }
  5. for (const key in replacements) {
  6. if (replacements.hasOwnProperty(key)) {
  7. const oldValue = replacements[key].old;
  8. const newValue = replacements[key].new;
  9. if (oldValue !== undefined && oldValue !== null && oldValue !== '') {
  10. if (typeof element === 'string') {
  11. element = element.replace(new RegExp(oldValue.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'), 'g'), newValue);
  12. } else if (element.nodeType === Node.TEXT_NODE) {
  13. let textContent = element.textContent;
  14. textContent = textContent.replace(new RegExp(oldValue.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'), 'g'), newValue);
  15. element.textContent = textContent;
  16. } else if (element.nodeType === Node.ELEMENT_NODE) {
  17. for (let i = 0; i < element.childNodes.length; i++) {
  18. replaceValues(element.childNodes[i], replacements);
  19. }
  20. if (element.textContent) {
  21. element.textContent = element.textContent.replace(new RegExp(oldValue.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'), 'g'), newValue);
  22. }
  23. }
  24. }
  25. }
  26. }
  27. }
  28. if (typeof document !== 'undefined') {
  29. document.addEventListener('DOMContentLoaded', function() {
  30. const replacements = [
  31. { old: 'oldValue1', new: 'newValue1' },
  32. { old: 'oldValue2', new: 'newValue2' },
  33. // Add more replacements here
  34. ];
  35. replaceValues(document.body, replacements);
  36. });
  37. }

Add your comment