Ivankooo1

myBlog

Oct 23rd, 2020
154
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.90 KB | None | 0 0
  1. function solve(){
  2.  
  3. let createNewArticle = document.querySelector('form');
  4. let articleSection = document.querySelector('main section');
  5. let ul = document.querySelector('.archive-section ul');
  6. let author = createNewArticle.querySelector("#creator");
  7. let title = createNewArticle.querySelector('#title');
  8. let category = createNewArticle.querySelector("#category");
  9. let content = createNewArticle.querySelector('#content');
  10.  
  11. createNewArticle.addEventListener('click', newArticle);
  12. function newArticle(e){
  13. e.preventDefault();
  14.  
  15. if(e.target.localName === 'button'){
  16. if(author.value !== '' && title.value !== '' && category.value !== '' && content.value !== ''){
  17. let article = document.createElement('article');
  18. let h1 = document.createElement('h1');
  19. let p = document.createElement('p');
  20. let p1 = document.createElement('p');
  21. let p2 = document.createElement('p');
  22. let div = document.createElement('div');
  23. let btnDelete = document.createElement('button');
  24. let btnArchive = document.createElement('button');
  25.  
  26. div.className = 'buttons';
  27. btnDelete.className = 'btn delete';
  28. btnArchive.className = 'btn archive';
  29. btnDelete.textContent = 'Delete';
  30. btnArchive.textContent = 'Archive';
  31. div.appendChild(btnDelete);
  32. div.appendChild(btnArchive);
  33.  
  34. h1.textContent = title.value;
  35. p.innerHTML = `Category: <strong>${category.value}</strong>`;
  36. p1.innerHTML = `Creator: <strong>${author.value}</strong>`;
  37. p2.textContent = content.value;
  38.  
  39. article.appendChild(h1);
  40. article.appendChild(p);
  41. article.appendChild(p1);
  42. article.appendChild(p2);
  43. article.appendChild(div);
  44.  
  45. articleSection.appendChild(article);
  46.  
  47. // author.value = '';
  48. // title.value = '';
  49. // category.value = '';
  50. // content.value = '';
  51.  
  52. btnDelete.addEventListener('click', del);
  53. function del(e){
  54. e.target.parentElement.parentElement.remove();
  55. }
  56.  
  57. btnArchive.addEventListener('click', archive);
  58. function archive(e){
  59. let li = document.createElement('li');
  60. li.textContent = h1.textContent;
  61. ul.appendChild(li);
  62. let list = [...ul.querySelectorAll('li')];
  63.  
  64. list.sort((a,b)=> a.textContent.localeCompare(b.textContent)).forEach(i=>{
  65. ul.appendChild(i);
  66. });
  67.  
  68. e.target.parentElement.parentElement.remove();
  69. }
  70.  
  71. }
  72. }
  73.  
  74. }
  75.  
  76. }
  77.  
Advertisement
Add Comment
Please, Sign In to add comment