Advertisement
Guest User

Untitled

a guest
Nov 18th, 2018
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.69 KB | None | 0 0
  1. let colours = ["red", "blue", "green", "purple", "orange", "brown"];
  2. let paragraphs = document.getElementsByTagName("p");
  3.  
  4. function colourParagraphs(){
  5. for(var i = 0; i < paragraphs.length; i++){
  6. paragraphs[i].style.color = colours[Math.floor(Math.random() * 6)];
  7. }
  8. }
  9.  
  10. function displayTitles(){
  11. for(var i = 0; i < paragraphs.length; i++){
  12. paragraphs[i].title = paragraphs[i].innerHTML.length;
  13. }
  14. }
  15.  
  16. document.onclick = (event) => {
  17. let current = event.target;
  18. let node = current.previousElementSibling;
  19.  
  20. if(current.nodeName === "P"){
  21. for(var i = 0; i < paragraphs.length; i++){
  22. paragraphs[i].style = null;
  23. colourParagraphs();
  24. }
  25.  
  26. if([...current.parentElement.children].filter((value) => value.nodeName === "P").indexOf(current) %2){
  27. current.style.backgroundColor = "darkgray";
  28. } else{
  29. current.style.backgroundColor = "lightgray";
  30. }
  31. current.style.border = "solid thick green";
  32.  
  33. while(node != null){
  34. if(node.nodeName === "P"){
  35. node.style.border = "solid thick orange";
  36. break;
  37. }
  38. node = node.previousElementSibling;
  39. }
  40.  
  41.  
  42. node = current.nextElementSibling;
  43.  
  44. while(node != null){
  45. if(node.nodeName === "P"){
  46. node.style.border = "solid thick blue";
  47. break;
  48. }
  49. node = node.nextElementSibling;
  50. }
  51.  
  52. }
  53.  
  54.  
  55. if(current.nodeName == "H1"){
  56. console.log(current.nextElementSibling.hidden)
  57. current.nextElementSibling.hidden = !current.nextElementSibling.hidden;
  58. }
  59.  
  60. };
  61.  
  62. document.getElementById("form").onsubmit = ((event) =>{
  63. event.preventDefault();
  64. let paragraph = event.target.elements["paragraph"].value;
  65. let paragraphEl = document.createElement("h1");
  66. let content = event.target.elements["content"].value;
  67. let contentEl = document.createElement("p");
  68. paragraphs = document.getElementsByTagName("p");
  69. paragraphEl.innerHTML = paragraph;
  70. contentEl.innerHTML = content;
  71. let lastParagraphParent = paragraphs[paragraphs.length - 1].parentNode;
  72. lastParagraphParent.insertBefore(paragraphEl, document.getElementById("form"));
  73. lastParagraphParent.insertBefore(contentEl, document.getElementById("form"));
  74. colourParagraphs();
  75. });
  76.  
  77. for(i = 0; i < paragraphs.length; i++){
  78. let parent = paragraphs[i].parentNode;
  79. let paragraph = document.createElement("h1");
  80. paragraph.innerHTML = "Paragraf " + i;
  81. parent.insertBefore(paragraph, paragraphs[i]);
  82. }
  83.  
  84. colourParagraphs();
  85. displayTitles();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement