Advertisement
Guest User

3.bookGenerator

a guest
Feb 21st, 2018
57
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.26 KB | None | 0 0
  1. let bookGenerator = (function bookGenerator() {
  2. let id = 1;
  3. return function (selector, title, author, isbn) {
  4. let container = $(selector);
  5. let fragment = document.createDocumentFragment();
  6. //create the elements
  7. let div = $('<div>');
  8. div.attr('id', `book${id++}`);
  9. div.attr('style', 'border: medium none;');
  10. let titleP = $(`<p>${title}</p>`);
  11. titleP.addClass('title');
  12. let authorP = $(`<p>${author}</p>`);
  13. authorP.addClass('author');
  14. let isbnP = $(`<p>${isbn}</p>`);
  15. isbnP.addClass('isbn');
  16. let selectBtn = $('<button>Select</button>');
  17. let deselectBtn = $('<button>Deselect</button>');
  18.  
  19. //create buttons behaviors
  20. $(selectBtn).click(() => $(div).css({border: "2px solid blue"}));
  21. $(deselectBtn).click(() => $(div).css({border: "medium none"}));
  22.  
  23. //connection
  24. titleP.appendTo(div);
  25. authorP.appendTo(div);
  26. isbnP.appendTo(div);
  27. selectBtn.appendTo(div);
  28. deselectBtn.appendTo(div);
  29. div.appendTo(fragment);
  30. container.append(fragment);
  31. }
  32. })();
  33.  
  34. function createBook(selector, title, author, isbn) {
  35. bookGenerator(selector, title, author, isbn);
  36. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement