Advertisement
Guest User

Untitled

a guest
Jul 17th, 2019
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.51 KB | None | 0 0
  1. <div class="test">
  2. <font color="#aa533e">
  3. <font face="Helvetica, serif">
  4. <font size="1" style="font-size: 8pt">
  5. <span style="background: #d096ff">Hello <span data-element="retain">World</span></span>
  6. </font>
  7. </font>
  8. </font>
  9. <font color="#000000">
  10. <font face="Times New Roman, serif">
  11. <font size="2" style="font-size: 11pt">This is</font>
  12. </font>
  13. </font>
  14. <b>test</b> example
  15. </div>
  16.  
  17. <div>
  18. Hello <span data-element="retain">World</span>
  19. This is
  20. test
  21. example
  22. </div>
  23.  
  24. var inputNode = document.querySelector('.test');
  25.  
  26. treeWalker = document.createTreeWalker(
  27. inputNode, NodeFilter.SHOW_ALL, null, false
  28. );
  29. currentNode = treeWalker.nextNode();
  30.  
  31. var temp = [];
  32. var tempDiv = document.createElement('div');
  33. while (currentNode != null) {
  34. nodeType = currentNode.nodeType;
  35. if (nodeType === Node.COMMENT_NODE) {
  36. temp.push(' ');
  37. }
  38. else if (
  39. currentNode.tagName && currentNode.tagName.toLowerCase() === 'span' &&
  40. currentNode.dataset && currentNode.dataset.element && currentNode.dataset.element === "retain"
  41. ) {
  42. tempDiv.appendChild(currentNode.cloneNode(true));
  43. temp.push(currentNode.outerHTML);
  44. currentNode = treeWalker.nextNode();
  45. } else if (currentNode.hasChildNodes() === false) {
  46. tempDiv.appendChild(currentNode.cloneNode(true));
  47. temp.push(currentNode.textContent);
  48. }
  49. currentNode = treeWalker.nextNode();
  50. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement