1
1
const menuEmail = document . querySelector ( '.navbar-email' ) ;
2
2
const menuHamIcon = document . querySelector ( '.menu' ) ;
3
3
const menuCarritoIcon = document . querySelector ( '.navbar-shopping-cart' ) ;
4
+ const productDetailCloseIcon = document . querySelector ( '.product-detail-close' )
4
5
const desktopMenu = document . querySelector ( '.desktop-menu' ) ;
5
6
const mobileMenu = document . querySelector ( '.mobile-menu' ) ;
6
7
const shoppingCartContainer = document . querySelector ( '#shoppingCartContainer' ) ;
8
+ const productDetailContainer = document . querySelector ( '#productDetail' ) ;
7
9
const cardsContainer = document . querySelector ( '.cards-container' ) ;
8
10
9
11
menuEmail . addEventListener ( 'click' , toggleDesktopMenu ) ;
10
12
menuHamIcon . addEventListener ( 'click' , toggleMobileMenu ) ;
11
13
menuCarritoIcon . addEventListener ( 'click' , toggleCarritoAside ) ;
14
+ productDetailCloseIcon . addEventListener ( 'click' , closeProductDetailAside ) ;
12
15
13
16
function toggleDesktopMenu ( ) {
14
17
const isAsideClosed = shoppingCartContainer . classList . contains ( 'inactive' ) ;
@@ -26,6 +29,8 @@ function toggleMobileMenu() {
26
29
if ( ! isAsideClosed ) {
27
30
shoppingCartContainer . classList . add ( 'inactive' ) ;
28
31
}
32
+
33
+ closeProductDetailAside ( ) ;
29
34
30
35
mobileMenu . classList . toggle ( 'inactive' ) ;
31
36
}
@@ -34,12 +39,27 @@ function toggleCarritoAside() {
34
39
const isMobileMenuClosed = mobileMenu . classList . contains ( 'inactive' ) ;
35
40
36
41
if ( ! isMobileMenuClosed ) {
37
- mobileMenu . classList . add ( 'inactive' ) ;
42
+ mobileMenu . classList . add ( 'inactive' ) ;
43
+ }
44
+
45
+ const isProductDetailClosed = productDetailContainer . classList . contains ( 'inactive' ) ;
46
+
47
+ if ( ! isProductDetailClosed ) {
48
+ productDetailContainer . classList . add ( 'inactive' ) ;
38
49
}
39
50
40
51
shoppingCartContainer . classList . toggle ( 'inactive' ) ;
41
52
}
42
53
54
+ function openProductDetailAside ( ) {
55
+ shoppingCartContainer . classList . add ( 'inactive' ) ;
56
+ productDetailContainer . classList . remove ( 'inactive' ) ;
57
+ }
58
+
59
+ function closeProductDetailAside ( ) {
60
+ productDetailContainer . classList . add ( 'inactive' ) ;
61
+ }
62
+
43
63
const productList = [ ] ;
44
64
productList . push ( {
45
65
name : 'Bike' ,
@@ -65,6 +85,7 @@ function renderProducts(arr) {
65
85
// product= {name, price, image} -> product.image
66
86
const productImg = document . createElement ( 'img' ) ;
67
87
productImg . setAttribute ( 'src' , product . image ) ;
88
+ productImg . addEventListener ( 'click' , openProductDetailAside ) ;
68
89
69
90
const productInfo = document . createElement ( 'div' ) ;
70
91
productInfo . classList . add ( 'product-info' ) ;
0 commit comments