Widget:Test: mudanças entre as edições
Ir para navegação
Ir para pesquisar
Sem resumo de edição Etiqueta: Reversão manual |
Sem resumo de edição |
||
Linha 30: | Linha 30: | ||
.dropdown-item:hover { | .dropdown-item:hover { | ||
background-color: #f0f0f0; | background-color: #f0f0f0; | ||
} | |||
.image-container { | |||
display: flex; | |||
flex-direction: column; | |||
align-items: center; | |||
justify-content: center; | |||
} | } | ||
.image-item { margin-bottom: 1em; } | .image-item { margin-bottom: 1em; } | ||
Linha 51: | Linha 57: | ||
'Charmander': { | 'Charmander': { | ||
imageUrl: 'https://example.com/charmander.png', | imageUrl: 'https://example.com/charmander.png', | ||
description: 'Charmander, o Pokémon de fogo inicial.' | description: 'Charmander, o Pokémon de fogo inicial.', | ||
obtain: { | |||
url: 'https://wiki.pokexgames.com/index.php/Charmander', | |||
text: 'Como capturar Charmander' | |||
}, | |||
variations: [ | |||
{ | |||
description: 'Charmander versão especial de evento.', | |||
obtain: { | |||
url: 'https://wiki.pokexgames.com/index.php/Charmander_Event', | |||
text: 'Evento especial Charmander' | |||
} | |||
}, | |||
{ | |||
description: 'Charmander com habilidade rara.', | |||
obtain: { | |||
url: 'https://wiki.pokexgames.com/index.php/Charmander_Habilidade', | |||
text: 'Habilidade Rara de Charmander' | |||
} | |||
} | |||
] | |||
}, | }, | ||
'Bulbasaur': { | 'Bulbasaur': { | ||
imageUrl: 'https://example.com/bulbasaur.png', | imageUrl: 'https://example.com/bulbasaur.png', | ||
description: 'Bulbasaur, o Pokémon de grama inicial.' | description: 'Bulbasaur, o Pokémon de grama inicial.', | ||
obtain: { | |||
url: 'https://wiki.pokexgames.com/index.php/Bulbasaur', | |||
text: 'Como capturar Bulbasaur' | |||
} | |||
}, | }, | ||
'Squirtle': { | 'Squirtle': { | ||
imageUrl: 'https://example.com/squirtle.png', | imageUrl: 'https://example.com/squirtle.png', | ||
description: 'Squirtle, o Pokémon de água inicial.' | description: 'Squirtle, o Pokémon de água inicial.', | ||
obtain: { | |||
url: 'https://wiki.pokexgames.com/index.php/Squirtle', | |||
text: 'Como capturar Squirtle' | |||
} | |||
} | } | ||
}; | }; | ||
Linha 107: | Linha 140: | ||
function showImageInfo(imageName) { | function showImageInfo(imageName) { | ||
const imageInfo = imageList[imageName]; | const imageInfo = imageList[imageName]; | ||
let imagesHtml = ` | |||
<div class="image-item"> | <div class="image-item"> | ||
<img src="${imageInfo.imageUrl}" alt="${imageName}"> | <img src="${imageInfo.imageUrl}" alt="${imageName}"> | ||
Linha 113: | Linha 146: | ||
<b>Nome da Imagem</b>: ${imageName} <br> | <b>Nome da Imagem</b>: ${imageName} <br> | ||
<b>Descrição</b>: ${imageInfo.description} <br> | <b>Descrição</b>: ${imageInfo.description} <br> | ||
<b>URL</b>: ${imageInfo.imageUrl} | <b>URL</b>: ${imageInfo.imageUrl} <br> | ||
<b>Como Obter</b>: <a href="${imageInfo.obtain.url}" target="_blank">${imageInfo.obtain.text}</a> | |||
</div> | </div> | ||
</div> | </div> | ||
`; | `; | ||
if (imageInfo.variations) { | |||
imageInfo.variations.forEach(variation => { | |||
imagesHtml += ` | |||
<div class="image-item"> | |||
<div class="image-info"> | |||
<b>Descrição</b>: ${variation.description} <br> | |||
<b>Como Obter</b>: <a href="${variation.obtain.url}" target="_blank">${variation.obtain.text}</a> | |||
</div> | |||
</div> | |||
`; | |||
}); | |||
} | |||
imageContainer.innerHTML = imagesHtml; | imageContainer.innerHTML = imagesHtml; |
Edição das 04h07min de 30 de agosto de 2024
<!DOCTYPE html> <html lang="pt-BR"> <head>
<meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Busca de Imagens por Nome</title> <style> .input-group { margin-bottom: 1em; position: relative; } .dropdown { border: 1px solid #ccc; display: none; position: absolute; background-color: #fff; z-index: 1000; max-height: 150px; overflow-y: auto; width: 100%; } .dropdown-item { padding: 8px; cursor: pointer; display: flex; align-items: center; } .dropdown-item img { width: 30px; height: 30px; margin-right: 10px; } .dropdown-item:hover { background-color: #f0f0f0; } .image-container { display: flex; flex-direction: column; align-items: center; justify-content: center; } .image-item { margin-bottom: 1em; } .image-info { margin-top: 0.5em; } </style>
</head> <body>
<form id="imageForm">
<input type="text" id="imageSearch" placeholder="Digite o nome da imagem" autocomplete="off">
</form>
<script> const imageList = { 'Charmander': { imageUrl: 'https://example.com/charmander.png', description: 'Charmander, o Pokémon de fogo inicial.', obtain: { url: 'https://wiki.pokexgames.com/index.php/Charmander', text: 'Como capturar Charmander' }, variations: [ { description: 'Charmander versão especial de evento.', obtain: { url: 'https://wiki.pokexgames.com/index.php/Charmander_Event', text: 'Evento especial Charmander' } }, { description: 'Charmander com habilidade rara.', obtain: { url: 'https://wiki.pokexgames.com/index.php/Charmander_Habilidade', text: 'Habilidade Rara de Charmander' } } ] }, 'Bulbasaur': { imageUrl: 'https://example.com/bulbasaur.png', description: 'Bulbasaur, o Pokémon de grama inicial.', obtain: { url: 'https://wiki.pokexgames.com/index.php/Bulbasaur', text: 'Como capturar Bulbasaur' } }, 'Squirtle': { imageUrl: 'https://example.com/squirtle.png', description: 'Squirtle, o Pokémon de água inicial.', obtain: { url: 'https://wiki.pokexgames.com/index.php/Squirtle', text: 'Como capturar Squirtle' } } };
const imageSearch = document.getElementById('imageSearch'); const dropdown = document.getElementById('dropdown'); const imageContainer = document.getElementById('imageContainer');
imageSearch.addEventListener('input', function() { const searchValue = this.value.trim().toLowerCase(); dropdown.innerHTML = ;
if (searchValue) { Object.keys(imageList).forEach(imageName => { if (imageName.toLowerCase().includes(searchValue)) { const dropdownItem = document.createElement('div'); dropdownItem.classList.add('dropdown-item'); const imgElement = document.createElement('img'); imgElement.src = imageList[imageName].imageUrl; imgElement.alt = imageName; dropdownItem.appendChild(imgElement); dropdownItem.appendChild(document.createTextNode(imageName)); dropdownItem.addEventListener('click', function() { showImageInfo(imageName); dropdown.style.display = 'none'; }); dropdown.appendChild(dropdownItem); } });
dropdown.style.display = dropdown.childNodes.length ? 'block' : 'none'; } else { dropdown.style.display = 'none'; } });
document.addEventListener('click', function(event) { if (!imageSearch.contains(event.target) && !dropdown.contains(event.target)) { dropdown.style.display = 'none'; } });
function showImageInfo(imageName) { const imageInfo = imageList[imageName]; let imagesHtml = `
<img src="${imageInfo.imageUrl}" alt="${imageName}">
Nome da Imagem: ${imageName}
Descrição: ${imageInfo.description}
URL: ${imageInfo.imageUrl}
Como Obter: <a href="${imageInfo.obtain.url}" target="_blank">${imageInfo.obtain.text}</a>
`;
if (imageInfo.variations) { imageInfo.variations.forEach(variation => { imagesHtml += `
Descrição: ${variation.description}
Como Obter: <a href="${variation.obtain.url}" target="_blank">${variation.obtain.text}</a>
`; }); }
imageContainer.innerHTML = imagesHtml; imageContainer.classList.remove('hidden'); } </script>
</body> </html>