SlideShare a Scribd company logo
1 of 2
Download to read offline
Overview This assignment is designed to have you practice working with HTML and the DOM
in order to create both static and dynamic web content. You are asked to prototype a fictional
Music App. Your app will focus on a specific music genre and allow users to browse different
artists and find specific songs. Because your app's artists and songs will change frequently, we
often separate our data from its UI representation. This allows us to quickly make changes and
have the app always use the most current music catalogue. NOTE: in a reaf music app, our data
would be stored in a database. We will simulate working with a database by using JavaScript
Objects and Arrays in separate files. Pick Your Music Genre and Artists, Songs You need to
decide on the following details for your app: - Music Genre: your music app is going to focus on
a particular type of music. What is it? You could use the same type of music as you chose in
Assignment 3 or pick another. - Name: what is your app called? Pick something unique and
relevant to your chosen music genre. - Slogan: what is your store's slogan (i.e., a short
description)? This will help a user to determine if your music app is worth using. - Artists: which
music artists/bands does your app include? Based on your chosen music genre, pick at least 3
artists that make this type of music. No two students can use the exact same set of artists. -
Songs: pick a minimum of 20 songs by your chosen artists. Each song will belong to one of the
artists.
Each song needs the following things: - id: a unique String that identifies this song. For example:
"s 1 " or "song-01" or "V1StGXR8". It doesn't matter what format you choose as long as each
song has its own, unique value. Also, make sure the artist id and song id are different. - artistld: a
String that indicates which artist this song belongs to - title: a short String that names the song -
year: a String with the year (4 digits) that the song was recorded - duration: a Number of seconds
(i.e., an Integer value) for the song's length. When we store time values, we often store them in
seconds vs. floats, and convert them to minutes, seconds in the UI for display. - flagged: a
Boolean that indicates whether this song has been flagged in the system, and should NOT be
shown to users. Make sure at least 2 of your songs have flagged set to true.
Your artist and song data will go in 'src/artists.js' and 'src/songs.js' respectively. See these files
for technical details about how to code your data. Take some time now to enter all of your app's
data. Store Web Site HTML Your app's HTML file is located in 'src/index.html'. A brief HTML
skeleton has been created, and you are asked to fill in the rest using your information above.
Some of your site will be static (i.e., coded in HTML directly in index.html) and never change.
Other parts of the site will be dynamic (i.e., created using DOM API calls at run-time) and will
update in response to various events and user actions. Here is a basic wireframe of what your site
needs to include, and which parts are static or dynamic. NOTE: don't worry too much about how
it looks. Focus on the structure and functionality. Artist1 Name (Twitter, Instagram,
SoundCloud)
1. Create an event handler to run when the page is loaded. Make sure you don't do anything to
the DOM until it's fully loaded. Your function should do the following: a. Create all of the
buttons for your store's Artists i. Loop through all of your Artist objects and create a< button >
element for each, adding it to the nav id = "menu" > ii. Use each Artist's name for the button's
text iii. When the button is clicked, show that Artists Name, Links, and Songs. See below for
more details. b. Show a list of Songs in the tbody > of your Table. By default, you should use
your first Artist on load. See below for more details 2. Write a function that will show a list of
songs in the < tbody rows from the tbody >. HINT: inner HTML =un c. Filter your Songs Array
(i.e., use Array.prototype.filter(j) to get: i. All Songs for the chosen Artist. HINT: use
Array.prototype.includes() ii. All Songs that are NOT flagged d. Loop (use
Array.prototype.forEach(h) over your filtered song list and add them to the table's body using
DOM methods (i.e., not innerHTML): i. Create atr> element 1. Add a click handler to your that
will console.log() the song whenever the user clicks it ii. Create elements for the song's name,
year, and duration. Convert the duration in seconds to a value in mintues:seconds iii. Append
these td> elements to the < tr > iv. Append this < tr > to the < tbody> In your solution, you will
likely require all of the following: - console. log() and NOTE that you can log Objects like so:
console.log({ object }) - document.querySelector(j) to find elements in the DOM -
document.createElement() to create new DOM elements - node.appendChild() to add an element
as a child of a DOM node - element.innerHTML to modify the HTML content of an element.
Don't overuse this!

More Related Content

Similar to Overview This assignment is designed to have you practice working wit.pdf

Loading viewing/listening to Image and Audio, Fonts, Colors in Java
Loading viewing/listening to  Image and Audio, Fonts, Colors in JavaLoading viewing/listening to  Image and Audio, Fonts, Colors in Java
Loading viewing/listening to Image and Audio, Fonts, Colors in JavaVishnuMenon59
 
Learn Xamarin Absolute Beginners - Application Manifest, Android Resources & ...
Learn Xamarin Absolute Beginners - Application Manifest, Android Resources & ...Learn Xamarin Absolute Beginners - Application Manifest, Android Resources & ...
Learn Xamarin Absolute Beginners - Application Manifest, Android Resources & ...Eng Teong Cheah
 
Android tutorials7 calculator
Android tutorials7 calculatorAndroid tutorials7 calculator
Android tutorials7 calculatorVlad Kolesnyk
 
RecordPlug & plugXchange
RecordPlug & plugXchangeRecordPlug & plugXchange
RecordPlug & plugXchangeJimmy Ether
 
MusEdit Tutorials 2010
MusEdit Tutorials 2010MusEdit Tutorials 2010
MusEdit Tutorials 2010Loren
 
The Thousand Song Database
The Thousand Song DatabaseThe Thousand Song Database
The Thousand Song DatabasePhilip Howe
 
Applet and graphics programming
Applet and graphics programmingApplet and graphics programming
Applet and graphics programmingsrijavel
 
PLEASE I need help with my assignment I have to compelet .pdf
PLEASE I need help with my assignment I have to compelet  .pdfPLEASE I need help with my assignment I have to compelet  .pdf
PLEASE I need help with my assignment I have to compelet .pdfankit11134
 
Last.fm API workshop - Stockholm
Last.fm API workshop - StockholmLast.fm API workshop - Stockholm
Last.fm API workshop - StockholmMatthew Ogle
 
Play audio-continuously
Play audio-continuouslyPlay audio-continuously
Play audio-continuouslyphanhung20
 
In the beginningAfter playing some songs and playing a cu.docx
In the beginningAfter playing some songs and playing a cu.docxIn the beginningAfter playing some songs and playing a cu.docx
In the beginningAfter playing some songs and playing a cu.docxjaggernaoma
 
Introduction to Shiny for building web apps in R
Introduction to Shiny for building web apps in RIntroduction to Shiny for building web apps in R
Introduction to Shiny for building web apps in RPaul Richards
 
Music recommender app - Python with AI
Music recommender app - Python with AIMusic recommender app - Python with AI
Music recommender app - Python with AIaiclub_slides
 
Apple Garage Band
Apple Garage BandApple Garage Band
Apple Garage Bandjobb
 

Similar to Overview This assignment is designed to have you practice working wit.pdf (20)

Loading viewing/listening to Image and Audio, Fonts, Colors in Java
Loading viewing/listening to  Image and Audio, Fonts, Colors in JavaLoading viewing/listening to  Image and Audio, Fonts, Colors in Java
Loading viewing/listening to Image and Audio, Fonts, Colors in Java
 
Learn Xamarin Absolute Beginners - Application Manifest, Android Resources & ...
Learn Xamarin Absolute Beginners - Application Manifest, Android Resources & ...Learn Xamarin Absolute Beginners - Application Manifest, Android Resources & ...
Learn Xamarin Absolute Beginners - Application Manifest, Android Resources & ...
 
MUSIC APPLICATION (1).pdf
MUSIC   APPLICATION (1).pdfMUSIC   APPLICATION (1).pdf
MUSIC APPLICATION (1).pdf
 
Android tutorials7 calculator
Android tutorials7 calculatorAndroid tutorials7 calculator
Android tutorials7 calculator
 
Youth-Led Tech Curriculum Day 21
Youth-Led Tech Curriculum Day 21Youth-Led Tech Curriculum Day 21
Youth-Led Tech Curriculum Day 21
 
RecordPlug & plugXchange
RecordPlug & plugXchangeRecordPlug & plugXchange
RecordPlug & plugXchange
 
Transana
TransanaTransana
Transana
 
MusEdit Tutorials 2010
MusEdit Tutorials 2010MusEdit Tutorials 2010
MusEdit Tutorials 2010
 
Sencha touch
Sencha touchSencha touch
Sencha touch
 
The Thousand Song Database
The Thousand Song DatabaseThe Thousand Song Database
The Thousand Song Database
 
Applet and graphics programming
Applet and graphics programmingApplet and graphics programming
Applet and graphics programming
 
PLEASE I need help with my assignment I have to compelet .pdf
PLEASE I need help with my assignment I have to compelet  .pdfPLEASE I need help with my assignment I have to compelet  .pdf
PLEASE I need help with my assignment I have to compelet .pdf
 
Last.fm API workshop - Stockholm
Last.fm API workshop - StockholmLast.fm API workshop - Stockholm
Last.fm API workshop - Stockholm
 
Play audio-continuously
Play audio-continuouslyPlay audio-continuously
Play audio-continuously
 
In the beginningAfter playing some songs and playing a cu.docx
In the beginningAfter playing some songs and playing a cu.docxIn the beginningAfter playing some songs and playing a cu.docx
In the beginningAfter playing some songs and playing a cu.docx
 
Introduction to Shiny for building web apps in R
Introduction to Shiny for building web apps in RIntroduction to Shiny for building web apps in R
Introduction to Shiny for building web apps in R
 
Music recommender app - Python with AI
Music recommender app - Python with AIMusic recommender app - Python with AI
Music recommender app - Python with AI
 
Mp lab manual
Mp lab manualMp lab manual
Mp lab manual
 
To create a web service
To create a web serviceTo create a web service
To create a web service
 
Apple Garage Band
Apple Garage BandApple Garage Band
Apple Garage Band
 

More from karthik12341

Para medir mejor el bienestar econ�mico, el PIB debe 1. Encontr.pdf
 Para medir mejor el bienestar econ�mico, el PIB debe  1. Encontr.pdf Para medir mejor el bienestar econ�mico, el PIB debe  1. Encontr.pdf
Para medir mejor el bienestar econ�mico, el PIB debe 1. Encontr.pdfkarthik12341
 
Panini Corporation posee el 85 de las acciones con derecho a vo.pdf
 Panini Corporation posee el 85  de las acciones con derecho a vo.pdf Panini Corporation posee el 85  de las acciones con derecho a vo.pdf
Panini Corporation posee el 85 de las acciones con derecho a vo.pdfkarthik12341
 
P Co regularly sells goods to its one subsidiary company, S Co, which.pdf
 P Co regularly sells goods to its one subsidiary company, S Co, which.pdf P Co regularly sells goods to its one subsidiary company, S Co, which.pdf
P Co regularly sells goods to its one subsidiary company, S Co, which.pdfkarthik12341
 
Over the past year, Ionias money supply decreased by $4 billion, $1 .pdf
 Over the past year, Ionias money supply decreased by $4 billion, $1 .pdf Over the past year, Ionias money supply decreased by $4 billion, $1 .pdf
Over the past year, Ionias money supply decreased by $4 billion, $1 .pdfkarthik12341
 
Ornaments, Incorporated, is an allequity firm with a total market val.pdf
 Ornaments, Incorporated, is an allequity firm with a total market val.pdf Ornaments, Incorporated, is an allequity firm with a total market val.pdf
Ornaments, Incorporated, is an allequity firm with a total market val.pdfkarthik12341
 
Oriole Company commenced operations on July 1 . Oriole Company uses a.pdf
 Oriole Company commenced operations on July 1 . Oriole Company uses a.pdf Oriole Company commenced operations on July 1 . Oriole Company uses a.pdf
Oriole Company commenced operations on July 1 . Oriole Company uses a.pdfkarthik12341
 
Oriole Enterprises purchased a new piece of equipment for its factory.pdf
 Oriole Enterprises purchased a new piece of equipment for its factory.pdf Oriole Enterprises purchased a new piece of equipment for its factory.pdf
Oriole Enterprises purchased a new piece of equipment for its factory.pdfkarthik12341
 
Opinion Pieces Discuss WHOs Exclusion Of TB From Its Priority List O.pdf
 Opinion Pieces Discuss WHOs Exclusion Of TB From Its Priority List O.pdf Opinion Pieces Discuss WHOs Exclusion Of TB From Its Priority List O.pdf
Opinion Pieces Discuss WHOs Exclusion Of TB From Its Priority List O.pdfkarthik12341
 
operating income Is this more or less than before Why Begin by ide.pdf
 operating income Is this more or less than before Why Begin by ide.pdf operating income Is this more or less than before Why Begin by ide.pdf
operating income Is this more or less than before Why Begin by ide.pdfkarthik12341
 
Onewheel manufactures unicycles. In 2021 it had $2 million worth of u.pdf
 Onewheel manufactures unicycles. In 2021 it had $2 million worth of u.pdf Onewheel manufactures unicycles. In 2021 it had $2 million worth of u.pdf
Onewheel manufactures unicycles. In 2021 it had $2 million worth of u.pdfkarthik12341
 
One interesting result yielded by the Principle of Inclusion and Excl.pdf
 One interesting result yielded by the Principle of Inclusion and Excl.pdf One interesting result yielded by the Principle of Inclusion and Excl.pdf
One interesting result yielded by the Principle of Inclusion and Excl.pdfkarthik12341
 
On November 28, 2008 DJIA closed at 8726.61 points and the divisor .pdf
 On November 28, 2008 DJIA closed at 8726.61 points and the divisor .pdf On November 28, 2008 DJIA closed at 8726.61 points and the divisor .pdf
On November 28, 2008 DJIA closed at 8726.61 points and the divisor .pdfkarthik12341
 
On lanuary 2 Vear 4. Poplar tid, purchase.pdf
 On lanuary 2 Vear 4. Poplar tid, purchase.pdf On lanuary 2 Vear 4. Poplar tid, purchase.pdf
On lanuary 2 Vear 4. Poplar tid, purchase.pdfkarthik12341
 
On June 12, 2021, Minute Company purchased 1,000 shares of Second.pdf
 On June 12, 2021, Minute Company purchased 1,000 shares of Second.pdf On June 12, 2021, Minute Company purchased 1,000 shares of Second.pdf
On June 12, 2021, Minute Company purchased 1,000 shares of Second.pdfkarthik12341
 
Observe the following class structure public class Foot public Foo(i.pdf
 Observe the following class structure public class Foot public Foo(i.pdf Observe the following class structure public class Foot public Foo(i.pdf
Observe the following class structure public class Foot public Foo(i.pdfkarthik12341
 
On January 2 , Year 4, Poplar Ltd. purchased 80 of the outstanding s.pdf
 On January 2 , Year 4, Poplar Ltd. purchased 80 of the outstanding s.pdf On January 2 , Year 4, Poplar Ltd. purchased 80 of the outstanding s.pdf
On January 2 , Year 4, Poplar Ltd. purchased 80 of the outstanding s.pdfkarthik12341
 
On December 31,2025 , Grouper Company prepared an income statement an.pdf
 On December 31,2025 , Grouper Company prepared an income statement an.pdf On December 31,2025 , Grouper Company prepared an income statement an.pdf
On December 31,2025 , Grouper Company prepared an income statement an.pdfkarthik12341
 
On average, from 1960 to the present, which was higher in the United .pdf
 On average, from 1960 to the present, which was higher in the United .pdf On average, from 1960 to the present, which was higher in the United .pdf
On average, from 1960 to the present, which was higher in the United .pdfkarthik12341
 
of Interest t Due Mar 26 by 1159pm Submitting a file upload DNA mole.pdf
 of Interest t Due Mar 26 by 1159pm Submitting a file upload DNA mole.pdf of Interest t Due Mar 26 by 1159pm Submitting a file upload DNA mole.pdf
of Interest t Due Mar 26 by 1159pm Submitting a file upload DNA mole.pdfkarthik12341
 
Olaf lives in the state of Minnesota. In May 2022, a tornado hit th.pdf
 Olaf lives in the state of Minnesota. In May 2022, a tornado hit th.pdf Olaf lives in the state of Minnesota. In May 2022, a tornado hit th.pdf
Olaf lives in the state of Minnesota. In May 2022, a tornado hit th.pdfkarthik12341
 

More from karthik12341 (20)

Para medir mejor el bienestar econ�mico, el PIB debe 1. Encontr.pdf
 Para medir mejor el bienestar econ�mico, el PIB debe  1. Encontr.pdf Para medir mejor el bienestar econ�mico, el PIB debe  1. Encontr.pdf
Para medir mejor el bienestar econ�mico, el PIB debe 1. Encontr.pdf
 
Panini Corporation posee el 85 de las acciones con derecho a vo.pdf
 Panini Corporation posee el 85  de las acciones con derecho a vo.pdf Panini Corporation posee el 85  de las acciones con derecho a vo.pdf
Panini Corporation posee el 85 de las acciones con derecho a vo.pdf
 
P Co regularly sells goods to its one subsidiary company, S Co, which.pdf
 P Co regularly sells goods to its one subsidiary company, S Co, which.pdf P Co regularly sells goods to its one subsidiary company, S Co, which.pdf
P Co regularly sells goods to its one subsidiary company, S Co, which.pdf
 
Over the past year, Ionias money supply decreased by $4 billion, $1 .pdf
 Over the past year, Ionias money supply decreased by $4 billion, $1 .pdf Over the past year, Ionias money supply decreased by $4 billion, $1 .pdf
Over the past year, Ionias money supply decreased by $4 billion, $1 .pdf
 
Ornaments, Incorporated, is an allequity firm with a total market val.pdf
 Ornaments, Incorporated, is an allequity firm with a total market val.pdf Ornaments, Incorporated, is an allequity firm with a total market val.pdf
Ornaments, Incorporated, is an allequity firm with a total market val.pdf
 
Oriole Company commenced operations on July 1 . Oriole Company uses a.pdf
 Oriole Company commenced operations on July 1 . Oriole Company uses a.pdf Oriole Company commenced operations on July 1 . Oriole Company uses a.pdf
Oriole Company commenced operations on July 1 . Oriole Company uses a.pdf
 
Oriole Enterprises purchased a new piece of equipment for its factory.pdf
 Oriole Enterprises purchased a new piece of equipment for its factory.pdf Oriole Enterprises purchased a new piece of equipment for its factory.pdf
Oriole Enterprises purchased a new piece of equipment for its factory.pdf
 
Opinion Pieces Discuss WHOs Exclusion Of TB From Its Priority List O.pdf
 Opinion Pieces Discuss WHOs Exclusion Of TB From Its Priority List O.pdf Opinion Pieces Discuss WHOs Exclusion Of TB From Its Priority List O.pdf
Opinion Pieces Discuss WHOs Exclusion Of TB From Its Priority List O.pdf
 
operating income Is this more or less than before Why Begin by ide.pdf
 operating income Is this more or less than before Why Begin by ide.pdf operating income Is this more or less than before Why Begin by ide.pdf
operating income Is this more or less than before Why Begin by ide.pdf
 
Onewheel manufactures unicycles. In 2021 it had $2 million worth of u.pdf
 Onewheel manufactures unicycles. In 2021 it had $2 million worth of u.pdf Onewheel manufactures unicycles. In 2021 it had $2 million worth of u.pdf
Onewheel manufactures unicycles. In 2021 it had $2 million worth of u.pdf
 
One interesting result yielded by the Principle of Inclusion and Excl.pdf
 One interesting result yielded by the Principle of Inclusion and Excl.pdf One interesting result yielded by the Principle of Inclusion and Excl.pdf
One interesting result yielded by the Principle of Inclusion and Excl.pdf
 
On November 28, 2008 DJIA closed at 8726.61 points and the divisor .pdf
 On November 28, 2008 DJIA closed at 8726.61 points and the divisor .pdf On November 28, 2008 DJIA closed at 8726.61 points and the divisor .pdf
On November 28, 2008 DJIA closed at 8726.61 points and the divisor .pdf
 
On lanuary 2 Vear 4. Poplar tid, purchase.pdf
 On lanuary 2 Vear 4. Poplar tid, purchase.pdf On lanuary 2 Vear 4. Poplar tid, purchase.pdf
On lanuary 2 Vear 4. Poplar tid, purchase.pdf
 
On June 12, 2021, Minute Company purchased 1,000 shares of Second.pdf
 On June 12, 2021, Minute Company purchased 1,000 shares of Second.pdf On June 12, 2021, Minute Company purchased 1,000 shares of Second.pdf
On June 12, 2021, Minute Company purchased 1,000 shares of Second.pdf
 
Observe the following class structure public class Foot public Foo(i.pdf
 Observe the following class structure public class Foot public Foo(i.pdf Observe the following class structure public class Foot public Foo(i.pdf
Observe the following class structure public class Foot public Foo(i.pdf
 
On January 2 , Year 4, Poplar Ltd. purchased 80 of the outstanding s.pdf
 On January 2 , Year 4, Poplar Ltd. purchased 80 of the outstanding s.pdf On January 2 , Year 4, Poplar Ltd. purchased 80 of the outstanding s.pdf
On January 2 , Year 4, Poplar Ltd. purchased 80 of the outstanding s.pdf
 
On December 31,2025 , Grouper Company prepared an income statement an.pdf
 On December 31,2025 , Grouper Company prepared an income statement an.pdf On December 31,2025 , Grouper Company prepared an income statement an.pdf
On December 31,2025 , Grouper Company prepared an income statement an.pdf
 
On average, from 1960 to the present, which was higher in the United .pdf
 On average, from 1960 to the present, which was higher in the United .pdf On average, from 1960 to the present, which was higher in the United .pdf
On average, from 1960 to the present, which was higher in the United .pdf
 
of Interest t Due Mar 26 by 1159pm Submitting a file upload DNA mole.pdf
 of Interest t Due Mar 26 by 1159pm Submitting a file upload DNA mole.pdf of Interest t Due Mar 26 by 1159pm Submitting a file upload DNA mole.pdf
of Interest t Due Mar 26 by 1159pm Submitting a file upload DNA mole.pdf
 
Olaf lives in the state of Minnesota. In May 2022, a tornado hit th.pdf
 Olaf lives in the state of Minnesota. In May 2022, a tornado hit th.pdf Olaf lives in the state of Minnesota. In May 2022, a tornado hit th.pdf
Olaf lives in the state of Minnesota. In May 2022, a tornado hit th.pdf
 

Recently uploaded

ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTiammrhaywood
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactdawncurless
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Krashi Coaching
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon AUnboundStockton
 
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Sapana Sha
 
Hybridoma Technology ( Production , Purification , and Application )
Hybridoma Technology  ( Production , Purification , and Application  ) Hybridoma Technology  ( Production , Purification , and Application  )
Hybridoma Technology ( Production , Purification , and Application ) Sakshi Ghasle
 
MENTAL STATUS EXAMINATION format.docx
MENTAL     STATUS EXAMINATION format.docxMENTAL     STATUS EXAMINATION format.docx
MENTAL STATUS EXAMINATION format.docxPoojaSen20
 
Introduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxIntroduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxpboyjonauth
 
_Math 4-Q4 Week 5.pptx Steps in Collecting Data
_Math 4-Q4 Week 5.pptx Steps in Collecting Data_Math 4-Q4 Week 5.pptx Steps in Collecting Data
_Math 4-Q4 Week 5.pptx Steps in Collecting DataJhengPantaleon
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxSayali Powar
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)eniolaolutunde
 
mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docxPoojaSen20
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityGeoBlogs
 
Alper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentAlper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentInMediaRes1
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxGaneshChakor2
 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxmanuelaromero2013
 
How to Configure Email Server in Odoo 17
How to Configure Email Server in Odoo 17How to Configure Email Server in Odoo 17
How to Configure Email Server in Odoo 17Celine George
 

Recently uploaded (20)

TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdfTataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
 
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impact
 
Model Call Girl in Bikash Puri Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Bikash Puri  Delhi reach out to us at 🔝9953056974🔝Model Call Girl in Bikash Puri  Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Bikash Puri Delhi reach out to us at 🔝9953056974🔝
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon A
 
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
 
Hybridoma Technology ( Production , Purification , and Application )
Hybridoma Technology  ( Production , Purification , and Application  ) Hybridoma Technology  ( Production , Purification , and Application  )
Hybridoma Technology ( Production , Purification , and Application )
 
MENTAL STATUS EXAMINATION format.docx
MENTAL     STATUS EXAMINATION format.docxMENTAL     STATUS EXAMINATION format.docx
MENTAL STATUS EXAMINATION format.docx
 
Introduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxIntroduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptx
 
_Math 4-Q4 Week 5.pptx Steps in Collecting Data
_Math 4-Q4 Week 5.pptx Steps in Collecting Data_Math 4-Q4 Week 5.pptx Steps in Collecting Data
_Math 4-Q4 Week 5.pptx Steps in Collecting Data
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
 
9953330565 Low Rate Call Girls In Rohini Delhi NCR
9953330565 Low Rate Call Girls In Rohini  Delhi NCR9953330565 Low Rate Call Girls In Rohini  Delhi NCR
9953330565 Low Rate Call Girls In Rohini Delhi NCR
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)
 
mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docx
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activity
 
Alper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentAlper Gobel In Media Res Media Component
Alper Gobel In Media Res Media Component
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptx
 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptx
 
How to Configure Email Server in Odoo 17
How to Configure Email Server in Odoo 17How to Configure Email Server in Odoo 17
How to Configure Email Server in Odoo 17
 

Overview This assignment is designed to have you practice working wit.pdf

  • 1. Overview This assignment is designed to have you practice working with HTML and the DOM in order to create both static and dynamic web content. You are asked to prototype a fictional Music App. Your app will focus on a specific music genre and allow users to browse different artists and find specific songs. Because your app's artists and songs will change frequently, we often separate our data from its UI representation. This allows us to quickly make changes and have the app always use the most current music catalogue. NOTE: in a reaf music app, our data would be stored in a database. We will simulate working with a database by using JavaScript Objects and Arrays in separate files. Pick Your Music Genre and Artists, Songs You need to decide on the following details for your app: - Music Genre: your music app is going to focus on a particular type of music. What is it? You could use the same type of music as you chose in Assignment 3 or pick another. - Name: what is your app called? Pick something unique and relevant to your chosen music genre. - Slogan: what is your store's slogan (i.e., a short description)? This will help a user to determine if your music app is worth using. - Artists: which music artists/bands does your app include? Based on your chosen music genre, pick at least 3 artists that make this type of music. No two students can use the exact same set of artists. - Songs: pick a minimum of 20 songs by your chosen artists. Each song will belong to one of the artists. Each song needs the following things: - id: a unique String that identifies this song. For example: "s 1 " or "song-01" or "V1StGXR8". It doesn't matter what format you choose as long as each song has its own, unique value. Also, make sure the artist id and song id are different. - artistld: a String that indicates which artist this song belongs to - title: a short String that names the song - year: a String with the year (4 digits) that the song was recorded - duration: a Number of seconds (i.e., an Integer value) for the song's length. When we store time values, we often store them in seconds vs. floats, and convert them to minutes, seconds in the UI for display. - flagged: a Boolean that indicates whether this song has been flagged in the system, and should NOT be shown to users. Make sure at least 2 of your songs have flagged set to true. Your artist and song data will go in 'src/artists.js' and 'src/songs.js' respectively. See these files for technical details about how to code your data. Take some time now to enter all of your app's data. Store Web Site HTML Your app's HTML file is located in 'src/index.html'. A brief HTML skeleton has been created, and you are asked to fill in the rest using your information above. Some of your site will be static (i.e., coded in HTML directly in index.html) and never change. Other parts of the site will be dynamic (i.e., created using DOM API calls at run-time) and will update in response to various events and user actions. Here is a basic wireframe of what your site needs to include, and which parts are static or dynamic. NOTE: don't worry too much about how
  • 2. it looks. Focus on the structure and functionality. Artist1 Name (Twitter, Instagram, SoundCloud) 1. Create an event handler to run when the page is loaded. Make sure you don't do anything to the DOM until it's fully loaded. Your function should do the following: a. Create all of the buttons for your store's Artists i. Loop through all of your Artist objects and create a< button > element for each, adding it to the nav id = "menu" > ii. Use each Artist's name for the button's text iii. When the button is clicked, show that Artists Name, Links, and Songs. See below for more details. b. Show a list of Songs in the tbody > of your Table. By default, you should use your first Artist on load. See below for more details 2. Write a function that will show a list of songs in the < tbody rows from the tbody >. HINT: inner HTML =un c. Filter your Songs Array (i.e., use Array.prototype.filter(j) to get: i. All Songs for the chosen Artist. HINT: use Array.prototype.includes() ii. All Songs that are NOT flagged d. Loop (use Array.prototype.forEach(h) over your filtered song list and add them to the table's body using DOM methods (i.e., not innerHTML): i. Create atr> element 1. Add a click handler to your that will console.log() the song whenever the user clicks it ii. Create elements for the song's name, year, and duration. Convert the duration in seconds to a value in mintues:seconds iii. Append these td> elements to the < tr > iv. Append this < tr > to the < tbody> In your solution, you will likely require all of the following: - console. log() and NOTE that you can log Objects like so: console.log({ object }) - document.querySelector(j) to find elements in the DOM - document.createElement() to create new DOM elements - node.appendChild() to add an element as a child of a DOM node - element.innerHTML to modify the HTML content of an element. Don't overuse this!