Hamburger Menu Functionality

6 minutes
Share the link to this page
Copied
  Completed
You need to have access to the item to view this lesson.
One-time Fee
$99.99
List Price:  $139.99
You save:  $40
€93.80
List Price:  €131.33
You save:  €37.52
£80.29
List Price:  £112.41
You save:  £32.12
CA$137.56
List Price:  CA$192.59
You save:  CA$55.03
A$155.72
List Price:  A$218.02
You save:  A$62.29
S$136.13
List Price:  S$190.59
You save:  S$54.46
HK$783.15
List Price:  HK$1,096.44
You save:  HK$313.29
CHF 90.82
List Price:  CHF 127.16
You save:  CHF 36.33
NOK kr1,103.56
List Price:  NOK kr1,545.03
You save:  NOK kr441.46
DKK kr700
List Price:  DKK kr980.03
You save:  DKK kr280.02
NZ$169.65
List Price:  NZ$237.52
You save:  NZ$67.86
د.إ367.23
List Price:  د.إ514.13
You save:  د.إ146.90
৳10,973.26
List Price:  ৳15,363.01
You save:  ৳4,389.74
₹8,346.81
List Price:  ₹11,685.87
You save:  ₹3,339.05
RM478.30
List Price:  RM669.64
You save:  RM191.34
₦129,687.03
List Price:  ₦181,567.03
You save:  ₦51,880
₨27,846.09
List Price:  ₨38,985.64
You save:  ₨11,139.55
฿3,684.97
List Price:  ฿5,159.11
You save:  ฿1,474.13
₺3,259.29
List Price:  ₺4,563.14
You save:  ₺1,303.85
B$524.14
List Price:  B$733.82
You save:  B$209.68
R1,920
List Price:  R2,688.08
You save:  R768.07
Лв183.64
List Price:  Лв257.10
You save:  Лв73.46
₩138,024.19
List Price:  ₩193,239.39
You save:  ₩55,215.20
₪378.55
List Price:  ₪529.99
You save:  ₪151.43
₱5,756.02
List Price:  ₱8,058.66
You save:  ₱2,302.64
¥15,447.20
List Price:  ¥21,626.70
You save:  ¥6,179.50
MX$1,726.94
List Price:  MX$2,417.79
You save:  MX$690.84
QR366.07
List Price:  QR512.51
You save:  QR146.44
P1,385.95
List Price:  P1,940.39
You save:  P554.43
KSh13,348.66
List Price:  KSh18,688.66
You save:  KSh5,340
E£4,832.56
List Price:  E£6,765.78
You save:  E£1,933.22
ብር5,710.80
List Price:  ብር7,995.35
You save:  ብር2,284.55
Kz83,585.80
List Price:  Kz117,023.47
You save:  Kz33,437.66
CLP$96,622.33
List Price:  CLP$135,275.13
You save:  CLP$38,652.80
CN¥724.04
List Price:  CN¥1,013.69
You save:  CN¥289.64
RD$5,929.75
List Price:  RD$8,301.89
You save:  RD$2,372.13
DA13,457.15
List Price:  DA18,840.55
You save:  DA5,383.40
FJ$227.57
List Price:  FJ$318.61
You save:  FJ$91.03
Q780.47
List Price:  Q1,092.69
You save:  Q312.22
GY$20,930.40
List Price:  GY$29,303.40
You save:  GY$8,372.99
ISK kr14,100.58
List Price:  ISK kr19,741.38
You save:  ISK kr5,640.80
DH1,016.63
List Price:  DH1,423.32
You save:  DH406.69
L1,790.82
List Price:  L2,507.22
You save:  L716.40
ден5,785.11
List Price:  ден8,099.38
You save:  ден2,314.27
MOP$806.50
List Price:  MOP$1,129.14
You save:  MOP$322.63
N$1,910.91
List Price:  N$2,675.35
You save:  N$764.44
C$3,692.82
List Price:  C$5,170.09
You save:  C$1,477.27
रु13,360.74
List Price:  रु18,705.58
You save:  रु5,344.83
S/376.13
List Price:  S/526.61
You save:  S/150.47
K381.31
List Price:  K533.85
You save:  K152.54
SAR375.08
List Price:  SAR525.14
You save:  SAR150.05
ZK2,557.08
List Price:  ZK3,580.02
You save:  ZK1,022.93
L466.85
List Price:  L653.61
You save:  L186.76
Kč2,369.96
List Price:  Kč3,318.04
You save:  Kč948.08
Ft37,031.68
List Price:  Ft51,845.84
You save:  Ft14,814.15
SEK kr1,094.85
List Price:  SEK kr1,532.83
You save:  SEK kr437.98
ARS$86,967.11
List Price:  ARS$121,757.44
You save:  ARS$34,790.32
Bs693.40
List Price:  Bs970.79
You save:  Bs277.38
COP$389,858.15
List Price:  COP$545,817.01
You save:  COP$155,958.85
₡50,274.61
List Price:  ₡70,386.47
You save:  ₡20,111.85
L2,477.26
List Price:  L3,468.26
You save:  L991
₲742,412.64
List Price:  ₲1,039,407.40
You save:  ₲296,994.75
$U3,872.48
List Price:  $U5,421.62
You save:  $U1,549.14
zł405.79
List Price:  zł568.12
You save:  zł162.33
Already have an account? Log In

Transcript

Alrighty, so to make our navigation functional, we're going to start in our HTML. And we're going to add a click event on our menu bars here, or menu bars ID. So we're going to do bracket, click, close bracket equals quotes, and then toggle and brackets again to run the function. And we're also going to copy this into our unordered list element, so that when we click on one of these, the navigation will also disappear. Now we're going to need to go into our TypeScript file, nav menu component Ts and inside of this, we are going To add a toggle function here and we're going to start by targeting our mobile nav so far, mobile nav equals document. get element by ID whoops, get element by ID, and then bracket quotes.

And we're going to target our mobile dash nav ID. Then we're going to make a variable for our menu bars. And that's going to be document, get element by ID bracket quote, and we're going to target our menu bars. And now we're going to use them. So mobile nav, dot class, whoops class list dot toggle. And we're going to toggle this nav expand class that we're going to make on and off.

And we're also going to have our menu bars class list, toggle. And we're going to toggle our change class on and off. Okay, so let's go back and check that out. Okay, so our animation works, but our menu itself doesn't work. That's because we haven't created our nav expand class yet. Essentially what will happen is by default, our mobile nav will be visible, but it will be above the viewport.

So this will be up top here. And then on the nav expand class, it'll bring it down into its current position. So in our CSS, we're going to create a nav expand class. Okay, so we'll just clean this up as well spaced that out. Okay, and let's do, let's do it here. So we're going to create a nav, expand class.

And we're going to copy our top value from our mobile nav, this is what it will be when it's expanded. And then we're going to change this 16 to be 300 so that it is above what's visible. Okay, so let's check that and see if that works. Okay, cool. So it toggles on and off. But instead of appearing Suddenly, I think It would be better if it slid down in from the top as an animation instead of instantly appearing and disappearing.

So to fix that, we're going to add a transition to both of these. So our mobile nav, we're going to add a transition 0.5 seconds ease. And we can copy this into our nav expand, and we'll make it expand a little bit faster. So we're gonna give that point three seconds. All right, so let's check that out now. Okay, awesome.

So it slides down from the top slides back up instead of instantly appearing. That looks a lot better. All right, so I think we're finally finished with our mobile navigation. But when we go back, our desktop Maverick navigation is messed up here. So we can quickly fix that. So at the top of our screen, CSS, we're going to target our menu, dash bars, ID.

And we're going to give that a display none. And we're also going to target our mobile dash Neff. And we're going to give that a display none as well. And then we're going to copy these down into our media query. And we're going to give these both a display initial. Alright, so let's double check that now.

All right, so we have our desktop menu working fine now and if we go back to our mobile so remember when the screens messed up like this Go to responsive and go back. Okay. All right. So our mobile navigation is working perfectly fine. And our desktop navigation is good. All right, perfect.

So I think that we are finished with our navigation finally. And in the next one will actually go on to do the responsive design for our vert, our horizontal, sorry, our horizontal orientation of our phone. All right, I'll see you that one. Bye for now.

Sign Up

Share

Share with friends, get 20% off
Invite your friends to LearnDesk learning marketplace. For each purchase they make, you get 20% off (upto $10) on your next purchase.