Widget:Test: mudanças entre as edições

De PokeXGames
Ir para navegação Ir para pesquisar
Sem resumo de edição
Sem resumo de edição
 
(224 revisões intermediárias pelo mesmo usuário não estão sendo mostradas)
Linha 1: Linha 1:
<script>
<!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 {
            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;
            text-align: center;
        }
        .image-item img {
            display: block;
            margin: 0 auto;
        }


const optionsImageTestz = [
        .variations-container {
    {
            display: flex;
        label: "Arya Stark",
            flex-wrap: wrap;
        image: "/images/0/02/Unown-j.png",
            justify-content: center;
        obs: "<center>
            margin-top: 1em;
{| class="wikitable sortable" width="21%"
        }
! colspan="4" | Velocidades de Fly 
|-
! align="center"  colspan="2" class="unsortable" | Pokémon 
! align="center" | Velocidade


|-
        .variation-item {
| width="1%" align="center" | [[Arquivo:628-Braviary.png|link=Charizard]]
            width: 35%;
| width="11%" align="center" | [[Braviary]]
            box-sizing: border-box;
| width="1%" align="center" | 500
            margin: 5px;
|-
            text-align: center;
| width="1%" align="center" | [[Arquivo:006-Charizard.png|link=Charizard]]
            border: 1px solid ;
| width="11%" align="center" | [[Charizard]]
            padding: 10px;
| width="1%" align="center" | 500
        }
|-
| width="1%" align="center" | [[Arquivo:006-shCharizard.png|link=Shiny Charizard]]
| width="11%" align="center" | [[Shiny Charizard]]
| width="1%" align="center" | 600
|-
| width="1%" align="center" | [[Arquivo:012-Sh Butterfree.png|link=Shiny Butterfree]]
| width="11%" align="center" | [[Shiny Butterfree]]
| width="1%" align="center" | 600
|-
| width="1%" align="center" | [[Arquivo:018-Pidgeot.png|link=Pidgeot]]
| width="11%" align="center" | [[Pidgeot]]
| width="1%" align="center" | 500
|-
| width="1%" align="center" | [[Arquivo:018-shPidgeot.png|link=Shiny Pidgeot]]
| width="11%" align="center" | [[Shiny Pidgeot]]
| width="1%" align="center" | 600
|-
| width="1%" align="center" | [[Arquivo:022-Fearow.png|link=Fearow]]
| width="11%" align="center" | [[Fearow]]
| width="1%" align="center" | 400
|-
| width="1%" align="center" | [[Arquivo:Shinyfea.png|link=Shiny Fearow]]
| width="11%" align="center" | [[Shiny Fearow]]
| width="1%" align="center" | 500
|-
| width="1%" align="center" | [[Arquivo:026-Raichu.png|link=Raichu]]
| width="11%" align="center" | [[Raichu]] <span style="color:red"> * </span>
| width="1%" align="center" | 500
|-
| width="1%" align="center" | [[Arquivo:026-Sh Raichu.png|link=Shiny Raichu]]
| width="11%" align="center" | [[Shiny Raichu]] <span style="color:red"> * </span>
| width="1%" align="center" | 600
|-
| width="1%" align="center" | [[Arquivo:049-Venomoth.png|link=Venomoth]]
| width="11%" align="center" | [[Venomoth]]
| width="1%" align="center" | 400
|-
| width="1%" align="center" | [[Arquivo:049-Sh Venomoth.png|link=Shiny Venomoth]]
| width="11%" align="center" | [[Shiny Venomoth]]
| width="1%" align="center" | 600
|-
| width="1%" align="center" | [[Arquivo:083-Farfetch-D.png|link=Farfetch'D]]
| width="11%" align="center" | [[Farfetch'D]]
| width="1%" align="center" | 400
|-
| width="1%" align="center" | [[Arquivo:083-shFarfetch-D.png|link=Elite Farfetch'D]]
| width="11%" align="center" | [[Elite Farfetch'D]]
| width="1%" align="center" | 600
|-
| width="1%" align="center" | [[Arquivo:094-Gengar.png|link=Gengar]]
| width="11%" align="center" | [[Gengar]]
| width="1%" align="center" | 500
|-
| width="1%" align="center" | [[Arquivo:Sgengar.png|link=Shiny Gengar]]
| width="11%" align="center" | [[Shiny Gengar]]
| width="1%" align="center" | 600
|-
| width="1%" align="center" | [[Arquivo:137-Porygon.png|link=Porygon]]
| width="11%" align="center" | [[Porygon]]
| width="1%" align="center" | 400
|-
| width="1%" align="center" | [[Arquivo:142-Aerodactyl.png|link=Aerodactyl]]
| width="11%" align="center" | [[Aerodactyl]]
| width="1%" align="center" | 600
|-
| width="1%" align="center" | [[Arquivo:148-Dragonair.png|link=Dragonair]]
| width="11%" align="center" | [[Dragonair]]
| width="1%" align="center" | 400
|-
| width="1%" align="center" | [[Arquivo:148-Sh Dragonair.png|link=Shiny Dragonair]]
| width="11%" align="center" | [[Shiny Dragonair]]
| width="1%" align="center" | 600
|-
| width="1%" align="center" | [[Arquivo:149-Dragonite.png|link=Dragonite]]
| width="11%" align="center" | [[Dragonite]]
| width="1%" align="center" | 500
|-
| width="1%" align="center" | [[Arquivo:164-Noctowl.png|link=Noctowl]]
| width="11%" align="center" | [[Noctowl]]
| width="1%" align="center" | 400
|-
| width="1%" align="center" | [[Arquivo:164-Sh Noctowl.png|link=Shiny Noctowl]]
| width="11%" align="center" | [[Shiny Noctowl]]
| width="1%" align="center" | 600
|-
| width="1%" align="center" | [[Arquivo:169-Crobat.png|link=Crobat]]
| width="11%" align="center" | [[Crobat]]
| width="1%" align="center" | 500
|-
| width="1%" align="center" | [[Arquivo:169-Sh Crobat.png|link=Shiny Crobat]]
| width="11%" align="center" | [[Shiny Crobat]]
| width="1%" align="center" | 600
|-
| width="1%" align="center" | [[Arquivo:178-Xatu.png|link=Xatu]]
| width="11%" align="center" | [[Xatu]]
| width="1%" align="center" | 500
|-
| width="1%" align="center" | [[Arquivo:178-shXatu.png|link=Shiny Xatu]]
| width="11%" align="center" | [[Shiny Xatu]]
| width="1%" align="center" | 600
|-
| width="1%" align="center" | [[Arquivo:214-Heracross.png|link=Heracross]]
| width="11%" align="center" | [[Heracross]]
| width="1%" align="center" | 500
|-
| width="1%" align="center" | [[Arquivo:225-Delibird.png|link=Delibird]]
| width="11%" align="center" | [[Delibird]]
| width="1%" align="center" | 400
|-
| width="1%" align="center" | [[Arquivo:225-Sh_Delibird.png|link=Shiny Delibird]]
| width="11%" align="center" | [[Shiny Delibird]]
| width="1%" align="center" | 600
|-
| width="1%" align="center" | [[Arquivo:227-Skarmory.png|link=Skarmory]]
| width="11%" align="center" | [[Skarmory]]
| width="1%" align="center" | 500
|-
| width="1%" align="center" | [[Arquivo:233-Porygon2.png|link=Porygon2]]
| width="11%" align="center" | [[Porygon2]]
| width="1%" align="center" | 500
|-
| width="1%" align="center" | [[Arquivo:277-Swellow.png|link=Swellow]]
| width="11%" align="center" | [[Swellow]]
| width="1%" align="center" | 500
|-
| width="1%" align="center" | [[Arquivo:279-Pelipper.png|link=Pelipper]]
| width="11%" align="center" | [[Pelipper]]
| width="1%" align="center" | 500
|-
| width="1%" align="center" | [[Arquivo:330-Flygon.png|link=Flygon]]
| width="11%" align="center" | [[Flygon]]
| width="1%" align="center" | 500
|-
| width="1%" align="center" | [[Arquivo:334-Altaria.png|link=Altaria]]
| width="11%" align="center" | [[Altaria]]
| width="1%" align="center" | 500
|-
| width="1%" align="center" | [[Arquivo:357-Tropius.png|link=Tropius]]
| width="11%" align="center" | [[Tropius]]
| width="1%" align="center" | 500
|-
| width="1%" align="center" | [[Arquivo:373-Salamence.png|link=Salamence]] 
| width="11%" align="center" | [[Salamence]]
| width="1%" align="center" | 600
|-
| width="1%" align="center" | [[Arquivo:398-Staraptor.png|link=Staraptor]]
| width="11%" align="center" | [[Staraptor]]
| width="1%" align="center" | 500
|-
| width="1%" align="center" | [[Arquivo:430-Honchkrow.png|link=Honchkrow]]
| width="11%" align="center" | [[Honchkrow]]
| width="1%" align="center" | 500
|-
| width="1%" align="center" | [[Arquivo:430-Shiny Honchkrow.png|link=Shiny Honchkrow]]
| width="11%" align="center" | [[Shiny Honchkrow]]
| width="1%" align="center" | 600
|-
| width="1%" align="center" | [[Arquivo:445-Garchomp.png|link=Garchomp]]
| width="11%" align="center" | [[Garchomp]]
| width="1%" align="center" | 500
|-
| width="1%" align="center" | [[Arquivo:462-Magnezone.png|link=Magnezone]]
| width="11%" align="center" | [[Magnezone]]
| width="1%" align="center" | 600
|-
| width="1%" align="center" | [[Arquivo:462-Shiny Magnezone.png|link=Shiny Magnezone]]
| width="11%" align="center" | [[Shiny Magnezone]]
| width="1%" align="center" | 600
|-
| width="1%" align="center" | [[Arquivo:468-Togekiss.png|link=Togekiss]]
| width="11%" align="center" | [[Togekiss]]
| width="1%" align="center" | 500
|-
| width="1%" align="center" | [[Arquivo:474.png|link=Porygon-Z]]
| width="11%" align="center" | [[Porygon-Z]]
| width="1%" align="center" | 600
|-
| width="1%" align="center" | [[Arquivo:567-Archeops.png|link=Archeops]]
| width="11%" align="center" | [[Archeops]]
| width="1%" align="center" | 500
|-
| width="1%" align="center" | [[Arquivo:623-Shiny_Golurk.png|link=Shiny Golurk]]
| width="11%" align="center" | [[Shiny Golurk]]
| width="1%" align="center" | 600
|-
| width="1%" align="center" | [[Arquivo:637-Volcarona.png|link=Volcarona]]
| width="11%" align="center" | [[Volcarona]]
| width="1%" align="center" | 500
|-
| width="1%" align="center" | [[Arquivo:663-Talonflame.png|link=Talonflame]]
| width="11%" align="center" | [[Talonflame]]
| width="1%" align="center" | 500
|-
| width="1%" align="center" | [[Arquivo:621-Druddigon.png|link=Druddigon]]
| width="11%" align="center" | [[Druddigon]]
| width="1%" align="center" | 500
|-
| width="1%" align="center" | [[Arquivo:621-Shiny_Druddigon.png|link=Shiny Druddigon]]
| width="11%" align="center" | [[Shiny Druddigon]]
| width="1%" align="center" | 600
|-
| width="1%" align="center" | [[Arquivo:623-Golurk.png|link=Golurk]]
| width="11%" align="center" | [[Golurk]]
| width="1%" align="center" | 500
|-
| width="1%" align="center" | [[Arquivo:635-Hydreigon.png|link=Hydreigon]]
| width="11%" align="center" | [[Hydreigon]]
| width="1%" align="center" | 500
|-
| width="1%" align="center" | [[Arquivo:635-Shiny Hydreigon.png|link=Shiny Hydreigon]]
| width="11%" align="center" | [[Shiny Hydreigon]]
| width="1%" align="center" | 600
|-
|}
</center>


<span style="color:red"> * </span>''' O Item Y-Balloon garante velocidade equivalente ao Wing 5 ao Shiny Raichu ou seja, 870 de fly speed.'''<br>
        .variation-item img {
<span style="color:red"> * </span>''' O Item Y-Balloon garante velocidade semelhante ao Wing 2 ao Raichu, ficando com 640 de fly speed.'''
            display: block;
"
            margin: 0 auto 10px;
    },
        }
    {
 
        label: "O ódio é um fardo muito grande para suportar (BEAR). Quem eu sou?",
        .swap-button {  
        image: "/images/7/74/Unown-b.png",
            margin-top: 10px;
         obs: "<center><b>Unown B</b></center>"
            cursor: pointer;
     },
            width: 15px;
    {
            height: 15px;
        label: "Se você persegue (CHASE) algo desesperadamente, isso te ilude. Quem eu sou?",
            background: url('https://wiki.pokexgames.com/images/f/fb/SwapButtonAddons.png') no-repeat center;
         image: "/images/6/66/Unown-c.png",
            background-size: contain;
        obs: "<center><b>Unown C</b></center>"
            display: block;
    },
            margin: 0 auto;
    {
         }
         label: "Você não pode controlar a direção (DIRECT) do vento, mas pode ajustar as velas. Quem eu sou?",
    </style>
        image: "/images/2/23/Unown-d.png",
</head>
        obs: "<center><b>Unown D</b></center>"
<body>
     },
     <form id="imageForm">
    {
         <div class="input-group">
        label: "A preparação é necessária antes de participar (ENGAGE) de qualquer reunião. Quem eu sou?",
            <input type="text" id="imageSearch" placeholder="Digite o nome da imagem" autocomplete="off">
        image: "/images/4/42/Unown-e.png",
            <div id="dropdown" class="dropdown"></div>
        obs: "<center><b>Unown E</b></center>"
        </div>
    },
 
    {
         <div id="imageContainer" class="image-container hidden">
        label: "É possível encontrar (FIND) esperança mesmo nos dias mais sombrios. Quem eu sou?",
            <!-- As imagens e suas informações serão exibidas aqui -->
        image: "/images/7/70/Unown-f.png",
        </div>
        obs: "<center><b>Unown F</b></center>"
    </form>
    },
 
    {
     <script>
        label: "Um amigo é um presente (GIFT) que você se dá. Quem eu sou?",
        const imageList = {
        image: "/images/2/21/Unown-g.png",
            'Squirtle': {
        obs: "<center><b>Unown G</b></center>"
                imageUrl: 'https://wiki.pokexgames.com/images/7/7a/007-Squirtle.png',  
    },
                variations: [
    {
                    {  
        label: "Nós não podemos ajudar todo mundo, mas todo mundo pode ajudar (HELP) alguém. Quem eu sou?",
                        description: 'Squirtle Purple Ninja Pack',
        image: "/images/1/19/Unown-h.png",
                        descriptionIMG: 'https://wiki.pokexgames.com/images/c/c1/Purple_Stripe.png',
        obs: "<center><b>Unown H</b></center>"
                        obtain: {
    },
                            url: 'https://wiki.pokexgames.com/index.php/Craft_Profissões_-_Estilista#Rank_E',
    {
                            text: 'Estilista'
        label: "O medo pode aumentar (INCREASE) sua capacidade de sobreviver. Quem eu sou?",
                        },
        image: "/images/f/f4/Unown-i.png",
                        additionalImages: [
        obs: "<center><b>Unown I</b></center>"
                            { url: 'https://wiki.pokexgames.com/images/d/dd/Squirtle_Purple_Ninja_Pack_Frente.png'}, // Frente
    },
                            { url: 'https://wiki.pokexgames.com/images/5/50/Squirtle_Purple_Ninja_Pack_Esquerda.png'}, // Lado Esquerdo
    {
                            { url: 'https://wiki.pokexgames.com/images/a/af/Squirtle_Purple_Ninja_Pack_Direita.png'}, // Costas
        label: "Somente quando juntar (JOIN) todos os pedaços é que você poderá ver a foto. Quem eu sou?",
                            { url: 'https://wiki.pokexgames.com/images/5/5d/Squirtle_Purple_Ninja_Pack_Costas.png'}  // Lado Direito
        image: "/images/0/02/Unown-j.png",
                        ]
        obs: "<center><b>Unown J</b></center>"
                    },
    },
                    {
    {
                        description: 'Squirtle Red Ninja Pack',
        label: "Se você continuar (KEEP) seguindo em frente, você não terá que parar. Quem eu sou?",
                        descriptionIMG: 'https://wiki.pokexgames.com/images/c/c1/Purple_Stripe.png',
        image: "/images/9/9d/Unown-k.png",
                        obtain: {
        obs: "<center><b>Unown K</b></center>"
                            url: 'https://wiki.pokexgames.com/index.php/Craft_Profissões_-_Estilista#Rank_E',
    },
                            text: 'Estilista'
    {
                        },
        label: "Você ri de mim porque eu sou diferente, eu rio (LAUGH) de vocês porque são todos iguais. Quem eu sou?",
                        additionalImages: [
        image: "/images/9/9c/Unown-l.png",
                            { url: 'https://wiki.pokexgames.com/images/1/13/Squirtle_Red_Ninja_Pack_Frente.png'}, // Frente
        obs: "<center><b>Unown L</b></center>"
                            { url: 'https://wiki.pokexgames.com/images/1/1e/Squirtle_Red_Ninja_Pack_Esquerda.png'}, // Lado Esquerdo
    },
                            { url: 'https://wiki.pokexgames.com/images/0/01/Squirtle_Red_Ninja_Pack_Costas.png'}, // Costas
    {
                            { url: 'https://wiki.pokexgames.com/images/f/fd/Squirtle_Red_Ninja_Pack_Direita.png'}  // Lado Direito
        label: "Decida-se (MAKE), talvez você não tenha outra chance. Quem eu sou?",
                        ]
        image: "/images/9/94/Unown-m.png",
                    }
        obs: "<center><b>Unown M</b></center>"
                ]
    },
            },
    {
        };
        label: "Você deveria encostar (NUZZLE) em algum lugar. Quem eu sou?",
 
        image: "/images/4/4e/Unown-n.png",
        const imageSearch = document.getElementById('imageSearch');
        obs: "<center><b>Unown N</b></center>"
         const dropdown = document.getElementById('dropdown');
    },
        const imageContainer = document.getElementById('imageContainer');
    {
 
        label: "Você pode observar (OBSERVE) muito apenas assistindo. Quem eu sou?",
         imageSearch.addEventListener('input', function() {
        image: "/images/2/21/Unown-o.png",
            const searchValue = this.value.trim().toLowerCase();
        obs: "<center><b>Unown O</b></center>"
            dropdown.innerHTML = '';
    },
 
    {
            if (searchValue) {
        label: "A vida é a farsa que todos devem executar (PERFORM). Quem eu sou?",
                Object.keys(imageList).forEach(imageName => {
        image: "/images/a/a8/Unown-p.png",
                    if (imageName.toLowerCase().includes(searchValue)) {
        obs: "<center><b>Unown P</b></center>"
                        const dropdownItem = document.createElement('div');
    },
                        dropdownItem.classList.add('dropdown-item');
    {
                       
        label: "Há momentos especiais que aceleram (QUICKEN) seu coração. Quem eu sou?",
                        const imgElement = document.createElement('img');
        image: "/images/a/ae/Unown-q.png",
                        imgElement.src = imageList[imageName].imageUrl;
        obs: "<center><b>Unown Q</b></center>"
                        imgElement.alt = imageName;
    },
                       
    {
                        dropdownItem.appendChild(imgElement);
         label: "Você não precisa de algo para reassegurar (REASSURE) que você é real. Quem eu sou?",
                        dropdownItem.appendChild(document.createTextNode(imageName));
         image: "/images/4/4f/Unown-r.png",
                       
        obs: "<center><b>Unown R</b></center>"
                        dropdownItem.addEventListener('click', function() {
    },
                            showImageInfo(imageName);
    {
                            dropdown.style.display = 'none';
        label: "Humanos estão sempre em busca (SEARCH) de significados. Quem eu sou?",
                        });
        image: "/images/f/fe/Unown-s.png",
                        dropdown.appendChild(dropdownItem);
        obs: "<center><b>Unown S</b></center>"
                    }
    },
                });
    {
 
        label: "Se você disser (TELL) a verdade, não precisa se lembrar de nada. Quem eu sou?",
                dropdown.style.display = dropdown.childNodes.length ? 'block' : 'none';
        image: "/images/1/12/Unown-t.png",
            } else {
         obs: "<center><b>Unown T</b></center>"
                dropdown.style.display = 'none';
    },
            }
    {
         });
        label: "Você não pode desfazer (UNDO) o passado... mas certamente pode não repeti-lo. Quem eu sou?",
 
         image: "/images/1/1a/Unown-u.png",
        document.addEventListener('click', function(event) {
         obs: "<center><b>Unown U</b></center>"
            if (!imageSearch.contains(event.target) && !dropdown.contains(event.target)) {
     },
                dropdown.style.display = 'none';
     {
            }
         label: "Quando você sabe o que está fazendo, quaisquer obstáculos desaparecem (VANISH) do seu caminho. Quem eu sou?",
        });
        image: "/images/1/15/Unown-v.png",
 
        obs: "<center><b>Unown V</b></center>"
function showImageInfo(imageName) {
    },
    const imageInfo = imageList[imageName];
    {
    let imagesHtml = `
        label: "Para ter sucesso, você deve sempre saber o que quer (WANT). Quem eu sou?",
         <div class="image-item">
        image: "/images/a/ad/Unown-w.png",
            <img src="${imageInfo.imageUrl}" alt="${imageName}">
        obs: "<center><b>Unown W</b></center>"
         </div>
    },
        <div class="variations-container">
    {
     `;
        label: "XXXXX. Quem eu sou?",
 
        image: "/images/5/58/Unown-x.png",
     imageInfo.variations.forEach((variation, index) => {
        obs: "<center><b>Unown X</b></center>"
         imagesHtml += `
     },
            <div class="variation-item">
     {
                <img src="${variation.additionalImages[0].url}" alt="Variation Image" class="variation-image" data-variation-index="${index}" style="width: ${variation.additionalImages[0].width}px;">
        label: "Às vezes, o melhor que você pode fazer é ceder (YIELD) à tentação. Quem eu sou?",
                <div class="swap-button" data-variation-index="${index}"></div><br>
        image: "/images/f/f9/Unown-y.png",
                <div class="image-info">
        obs: "<center><b>Unown Y</b></center>"
                    <img src="${variation.descriptionIMG}" alt="Description Image" style="margin-right: 5px; display: inline-block;"> <!-- Exibe a imagem antes da descrição -->
     },
                    <br> ${variation.description} <br> <!-- Descrição após a imagem -->
     {
                    <b>Como Obter</b>: <a href="${variation.obtain.url}" target="_blank">${variation.obtain.text}</a>
         label: "Mantenha-se focado e amplie (ZOOM) suas metas. Quem eu sou?",
                </div>
        image: "/images/8/81/Unown-z.png",
            </div>
         obs: "<center><b>Unown Z</b></center>"
        `;
    }
     });
]
 
</script>
    imagesHtml += '</div>';
 
     imageContainer.innerHTML = imagesHtml;
    imageContainer.classList.remove('hidden');
 
    // Alternar imagens ao clicar no botão de troca
     const swapButtons = document.querySelectorAll('.swap-button');
 
     swapButtons.forEach(button => {
         const index = button.getAttribute('data-variation-index');
        const variation = imageInfo.variations[index];
        let currentImageIndex = 0;
 
        button.addEventListener('click', () => {
            currentImageIndex = (currentImageIndex + 1) % variation.additionalImages.length;
            const variationImage = button.previousElementSibling; // Atualiza a imagem da variação
            variationImage.src = variation.additionalImages[currentImageIndex].url;
            variationImage.style.width = `${variation.additionalImages[currentImageIndex].width}px`;
         });
    });
}
 
    </script>
</body>
</html>

Edição atual tal como às 23h45min de 16 de outubro 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 {
           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; 
           text-align: center;
       }
       .image-item img {
           display: block;
           margin: 0 auto;
       }
       .variations-container {
           display: flex;
           flex-wrap: wrap;
           justify-content: center;
           margin-top: 1em;
       }
       .variation-item {
           width: 35%;
           box-sizing: border-box;
           margin: 5px;
           text-align: center;
           border: 1px solid ;
           padding: 10px;
       }
       .variation-item img {
           display: block;
           margin: 0 auto 10px;
       }
       .swap-button { 
           margin-top: 10px;
           cursor: pointer;
           width: 15px;
           height: 15px;
           background: url('https://wiki.pokexgames.com/images/f/fb/SwapButtonAddons.png') no-repeat center;
           background-size: contain;
           display: block;
           margin: 0 auto;
       }
   </style>

</head> <body>

   <form id="imageForm">
           <input type="text" id="imageSearch" placeholder="Digite o nome da imagem" autocomplete="off">
   </form>
   <script>
       const imageList = {
           'Squirtle': { 
               imageUrl: 'https://wiki.pokexgames.com/images/7/7a/007-Squirtle.png', 
               variations: [
                   { 
                       description: 'Squirtle Purple Ninja Pack',
                       descriptionIMG: 'https://wiki.pokexgames.com/images/c/c1/Purple_Stripe.png',
                       obtain: {
                           url: 'https://wiki.pokexgames.com/index.php/Craft_Profissões_-_Estilista#Rank_E',
                           text: 'Estilista'
                       },
                       additionalImages: [
                           { url: 'https://wiki.pokexgames.com/images/d/dd/Squirtle_Purple_Ninja_Pack_Frente.png'}, // Frente
                           { url: 'https://wiki.pokexgames.com/images/5/50/Squirtle_Purple_Ninja_Pack_Esquerda.png'}, // Lado Esquerdo
                           { url: 'https://wiki.pokexgames.com/images/a/af/Squirtle_Purple_Ninja_Pack_Direita.png'}, // Costas
                           { url: 'https://wiki.pokexgames.com/images/5/5d/Squirtle_Purple_Ninja_Pack_Costas.png'}  // Lado Direito
                       ]
                   },
                   {  
                       description: 'Squirtle Red Ninja Pack',
                       descriptionIMG: 'https://wiki.pokexgames.com/images/c/c1/Purple_Stripe.png',
                       obtain: {
                           url: 'https://wiki.pokexgames.com/index.php/Craft_Profissões_-_Estilista#Rank_E',
                           text: 'Estilista'
                       },
                       additionalImages: [
                           { url: 'https://wiki.pokexgames.com/images/1/13/Squirtle_Red_Ninja_Pack_Frente.png'}, // Frente
                           { url: 'https://wiki.pokexgames.com/images/1/1e/Squirtle_Red_Ninja_Pack_Esquerda.png'}, // Lado Esquerdo
                           { url: 'https://wiki.pokexgames.com/images/0/01/Squirtle_Red_Ninja_Pack_Costas.png'}, // Costas
                           { url: 'https://wiki.pokexgames.com/images/f/fd/Squirtle_Red_Ninja_Pack_Direita.png'}  // Lado Direito
                       ]
                   }
               ]
           },
       };
       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}">
   `;
   imageInfo.variations.forEach((variation, index) => {
       imagesHtml += `
                <img src="${variation.additionalImages[0].url}" alt="Variation Image" class="variation-image" data-variation-index="${index}" style="width: ${variation.additionalImages[0].width}px;">

                   <img src="${variation.descriptionIMG}" alt="Description Image" style="margin-right: 5px; display: inline-block;"> 
                   
${variation.description}
Como Obter: <a href="${variation.obtain.url}" target="_blank">${variation.obtain.text}</a>
       `;
   });
imagesHtml += '

';

   imageContainer.innerHTML = imagesHtml;
   imageContainer.classList.remove('hidden');
   // Alternar imagens ao clicar no botão de troca
   const swapButtons = document.querySelectorAll('.swap-button');
   swapButtons.forEach(button => {
       const index = button.getAttribute('data-variation-index');
       const variation = imageInfo.variations[index];
       let currentImageIndex = 0;
       button.addEventListener('click', () => {
           currentImageIndex = (currentImageIndex + 1) % variation.additionalImages.length;
           const variationImage = button.previousElementSibling; // Atualiza a imagem da variação
           variationImage.src = variation.additionalImages[currentImageIndex].url;
           variationImage.style.width = `${variation.additionalImages[currentImageIndex].width}px`;
       });
   });

}

   </script>

</body> </html>