Advertisement
Guest User

Untitled

a guest
Jun 23rd, 2017
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.77 KB | None | 0 0
  1. $(document).ready(function () {
  2.  
  3. class Product { // klasa produkt
  4. constructor(title, author, selector) {
  5. this.title = title; // zawiera elementy takie jak tytuł, autora i selektor
  6. this.author = author;
  7. this.selector = selector;
  8. }
  9. updateInfo() {
  10. let category = $(`div.${this.selector}`); // oraz metodę, która na podstawie selektora wyszukuje odpowiedni element w drzewie DOM
  11. category.find(".title").text(this.title); // przypisuje do niego w odpowiendich miejscach autora i tytuł książki czy ebooka
  12. category.find(".author").text(this.author);
  13. }
  14. }
  15.  
  16. class Book extends Product { // klasa Book jest rozszerzeniem klasy Product
  17. constructor(title, author, selector) { //posiada te same własności
  18. super(title, author, selector);
  19. }
  20. order() {
  21. console.log("Podaj adres"); // oraz metodę order
  22. }
  23. }
  24. class Ebook extends Product {
  25. constructor(title, author, selector) { // podobnie z klasą Ebook
  26. super(title, author, selector);
  27. }
  28. download() {
  29. console.log(`ściąganie... ${this.title}`);
  30. }
  31. }
  32.  
  33. let eBook1 = new Ebook("Ciemniejsze niebo", "Ruby Eliassen", "ebook"); // tworzymy naszego pierwszego ebooka na podstawie konktruktora Ebook
  34. // console.log(eBook1);
  35.  
  36. let book1 = new Book("Najdłuższa noc", "Maciej Dancewicz", "book"); // Tworzymy również książkę na podstawie Book
  37. // console.log(book1);
  38.  
  39. eBook1.updateInfo(); // wywołujemy metodę wypisującą dane pozycji w naszym dokumencie HTML
  40. book1.updateInfo();
  41.  
  42. let btns = $("button"); // wyszukujemy przyciski
  43.  
  44. btns.on("click", () => { //dodajemy im event
  45. if ($(this).parent().hasClass("book")) { // jeśli jego rodzic ma klasę book, wywołujemy odpowednią metodę
  46. book1.order()
  47. } else {
  48. eBook1.download();
  49. }
  50. })
  51.  
  52. })
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement