| 
									
										
										
										
											2021-06-15 00:49:18 -07:00
										 |  |  | --- | 
					
						
							|  |  |  | id: 587d7fae367417b2b2512be6 | 
					
						
							| 
									
										
										
										
											2021-07-26 03:17:00 +09:00
										 |  |  | title: Renderizar imagens de fontes de dados | 
					
						
							| 
									
										
										
										
											2021-06-15 00:49:18 -07:00
										 |  |  | challengeType: 6 | 
					
						
							|  |  |  | forumTopicId: 18265 | 
					
						
							|  |  |  | dashedName: render-images-from-data-sources | 
					
						
							|  |  |  | --- | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # --description--
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-07-26 03:17:00 +09:00
										 |  |  | Os últimos desafios mostraram que cada objeto no array do JSON continha uma chave `imageLink` com um valor, que é o URL de uma imagem de gato. | 
					
						
							| 
									
										
										
										
											2021-06-15 00:49:18 -07:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-07-26 03:17:00 +09:00
										 |  |  | Ao percorrer esses objetos, você pode usar essa propriedade `imageLink` para exibir essa imagem em um elemento `img`. | 
					
						
							| 
									
										
										
										
											2021-06-15 00:49:18 -07:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-07-26 03:17:00 +09:00
										 |  |  | Aqui está o código para fazer isso: | 
					
						
							| 
									
										
										
										
											2021-06-15 00:49:18 -07:00
										 |  |  | 
 | 
					
						
							|  |  |  | ```js | 
					
						
							|  |  |  | html += "<img src = '" + val.imageLink + "' " + "alt='" + val.altText + "'>"; | 
					
						
							|  |  |  | ``` | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # --instructions--
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-07-26 03:17:00 +09:00
										 |  |  | Adicione código para usar as propriedades `imageLink` e `altText` em uma tag `img`. | 
					
						
							| 
									
										
										
										
											2021-06-15 00:49:18 -07:00
										 |  |  | 
 | 
					
						
							|  |  |  | # --hints--
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-07-26 03:17:00 +09:00
										 |  |  | Você deve usar a propriedade `imageLink` para exibir as imagens. | 
					
						
							| 
									
										
										
										
											2021-06-15 00:49:18 -07:00
										 |  |  | 
 | 
					
						
							|  |  |  | ```js | 
					
						
							|  |  |  | assert(code.match(/val\.imageLink/g)); | 
					
						
							|  |  |  | ``` | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-07-26 03:17:00 +09:00
										 |  |  | Você deve usar o `altText` nos valores do atributo `alt` das imagens. | 
					
						
							| 
									
										
										
										
											2021-06-15 00:49:18 -07:00
										 |  |  | 
 | 
					
						
							|  |  |  | ```js | 
					
						
							|  |  |  | assert(code.match(/val\.altText/g)); | 
					
						
							|  |  |  | ``` | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # --seed--
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ## --seed-contents--
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ```html | 
					
						
							|  |  |  | <script> | 
					
						
							|  |  |  |   document.addEventListener('DOMContentLoaded', function(){ | 
					
						
							|  |  |  |     document.getElementById('getMessage').onclick = function(){ | 
					
						
							|  |  |  |       const req=new XMLHttpRequest(); | 
					
						
							|  |  |  |       req.open("GET",'/json/cats.json',true); | 
					
						
							|  |  |  |       req.send(); | 
					
						
							|  |  |  |       req.onload = function(){ | 
					
						
							|  |  |  |         const json = JSON.parse(req.responseText); | 
					
						
							|  |  |  |         let html = ""; | 
					
						
							|  |  |  |         json.forEach(function(val) { | 
					
						
							|  |  |  |           html += "<div class = 'cat'>"; | 
					
						
							|  |  |  |           // Add your code below this line | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |           // Add your code above this line | 
					
						
							|  |  |  |           html += "</div><br>"; | 
					
						
							|  |  |  |         }); | 
					
						
							|  |  |  |         document.getElementsByClassName('message')[0].innerHTML=html; | 
					
						
							|  |  |  |       }; | 
					
						
							|  |  |  |      }; | 
					
						
							|  |  |  |   }); | 
					
						
							|  |  |  | </script> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | <style> | 
					
						
							|  |  |  |   body { | 
					
						
							|  |  |  |     text-align: center; | 
					
						
							|  |  |  |     font-family: "Helvetica", sans-serif; | 
					
						
							|  |  |  |   } | 
					
						
							|  |  |  |   h1 { | 
					
						
							|  |  |  |     font-size: 2em; | 
					
						
							|  |  |  |     font-weight: bold; | 
					
						
							|  |  |  |   } | 
					
						
							|  |  |  |   .box { | 
					
						
							|  |  |  |     border-radius: 5px; | 
					
						
							|  |  |  |     background-color: #eee; | 
					
						
							|  |  |  |     padding: 20px 5px; | 
					
						
							|  |  |  |   } | 
					
						
							|  |  |  |   button { | 
					
						
							|  |  |  |     color: white; | 
					
						
							|  |  |  |     background-color: #4791d0; | 
					
						
							|  |  |  |     border-radius: 5px; | 
					
						
							|  |  |  |     border: 1px solid #4791d0; | 
					
						
							|  |  |  |     padding: 5px 10px 8px 10px; | 
					
						
							|  |  |  |   } | 
					
						
							|  |  |  |   button:hover { | 
					
						
							|  |  |  |     background-color: #0F5897; | 
					
						
							|  |  |  |     border: 1px solid #0F5897; | 
					
						
							|  |  |  |   } | 
					
						
							|  |  |  | </style> | 
					
						
							|  |  |  | <h1>Cat Photo Finder</h1> | 
					
						
							|  |  |  | <p class="message box"> | 
					
						
							|  |  |  |   The message will go here | 
					
						
							|  |  |  | </p> | 
					
						
							|  |  |  | <p> | 
					
						
							|  |  |  |   <button id="getMessage"> | 
					
						
							|  |  |  |     Get Message | 
					
						
							|  |  |  |   </button> | 
					
						
							|  |  |  | </p> | 
					
						
							|  |  |  | ``` | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # --solutions--
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ```html | 
					
						
							|  |  |  | <script> | 
					
						
							|  |  |  |   document.addEventListener('DOMContentLoaded', function(){ | 
					
						
							|  |  |  |     document.getElementById('getMessage').onclick = function(){ | 
					
						
							|  |  |  |       const req = new XMLHttpRequest(); | 
					
						
							|  |  |  |       req.open("GET",'/json/cats.json',true); | 
					
						
							|  |  |  |       req.send(); | 
					
						
							|  |  |  |       req.onload = function(){ | 
					
						
							|  |  |  |         const json = JSON.parse(req.responseText); | 
					
						
							|  |  |  |         let html = ""; | 
					
						
							|  |  |  |         json.forEach(function(val) { | 
					
						
							|  |  |  |           html += "<div class = 'cat'>"; | 
					
						
							|  |  |  |           // Add your code below this line | 
					
						
							|  |  |  |           html += "<img src = '" + val.imageLink + "' " + "alt='" + val.altText + "'>"; | 
					
						
							|  |  |  |           // Add your code above this line | 
					
						
							|  |  |  |           html += "</div><br>"; | 
					
						
							|  |  |  |         }); | 
					
						
							|  |  |  |         document.getElementsByClassName('message')[0].innerHTML = html; | 
					
						
							|  |  |  |       }; | 
					
						
							|  |  |  |      }; | 
					
						
							|  |  |  |   }); | 
					
						
							|  |  |  | </script> | 
					
						
							|  |  |  | <style> | 
					
						
							|  |  |  |   body { | 
					
						
							|  |  |  |     text-align: center; | 
					
						
							|  |  |  |     font-family: "Helvetica", sans-serif; | 
					
						
							|  |  |  |   } | 
					
						
							|  |  |  |   h1 { | 
					
						
							|  |  |  |     font-size: 2em; | 
					
						
							|  |  |  |     font-weight: bold; | 
					
						
							|  |  |  |   } | 
					
						
							|  |  |  |   .box { | 
					
						
							|  |  |  |     border-radius: 5px; | 
					
						
							|  |  |  |     background-color: #eee; | 
					
						
							|  |  |  |     padding: 20px 5px; | 
					
						
							|  |  |  |   } | 
					
						
							|  |  |  |   button { | 
					
						
							|  |  |  |     color: white; | 
					
						
							|  |  |  |     background-color: #4791d0; | 
					
						
							|  |  |  |     border-radius: 5px; | 
					
						
							|  |  |  |     border: 1px solid #4791d0; | 
					
						
							|  |  |  |     padding: 5px 10px 8px 10px; | 
					
						
							|  |  |  |   } | 
					
						
							|  |  |  |   button:hover { | 
					
						
							|  |  |  |     background-color: #0F5897; | 
					
						
							|  |  |  |     border: 1px solid #0F5897; | 
					
						
							|  |  |  |   } | 
					
						
							|  |  |  | </style> | 
					
						
							|  |  |  | <h1>Cat Photo Finder</h1> | 
					
						
							|  |  |  | <p class="message"> | 
					
						
							|  |  |  |   The message will go here | 
					
						
							|  |  |  | </p> | 
					
						
							|  |  |  | <p> | 
					
						
							|  |  |  |   <button id="getMessage"> | 
					
						
							|  |  |  |     Get Message | 
					
						
							|  |  |  |   </button> | 
					
						
							|  |  |  | </p> | 
					
						
							|  |  |  | ``` |