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

De PokeXGames
Ir para navegação Ir para pesquisar
Sem resumo de edição
Etiqueta: Revertido
Sem resumo de edição
 
(182 revisões intermediárias pelo mesmo usuário não estão sendo mostradas)
Linha 1: Linha 1:
<script>
<!DOCTYPE html>
var optionsValuesAgatha = [
<html lang="pt-BR">
    {
<head>
        group: "Beholder Eye",
    <meta charset="UTF-8">
        phrases: [
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
            "The most common colors are brown, blue, green and black",
    <title>Busca de Imagens por Nome</title>
            "Our guide",
     <style>
            "Human Eye",
         .input-group { margin-bottom: 1em; position: relative; }
            "It can distinguish about 10 million colors"
         .dropdown {
        ],
            border: 1px solid #ccc;
        img: "/images/3/33/Beholder_Eye.png",
             display: none;
        obs: ""
             position: absolute;
     },
             background-color: #fff;
    {
            z-index: 1000;
         group: "Big Cask",
            max-height: 150px;
         phrases: [
            overflow-y: auto;
             "158,987295 liters",
            width: 100%;
             "You can find wine inside",
        }
             "You can store oil inside",
        .dropdown-item {
        ],
            padding: 8px;
        img: "/images/d/de/Big_Cask.png",
            cursor: pointer;
        obs: "Ele também pode aparecer como um recipiente. O nome será Big Cask."
             display: flex;
    },
             align-items: center;
    {
         }
        group: "Bug Venom",
         .dropdown-item img {
        phrases: [
            margin-right: 10px;
             "It has a powerful poison",
         }
             "Used to eat leaves",
        .dropdown-item:hover {
            "Insect's weapon",
            background-color: #f0f0f0;
         ],
         }
         img: "/images/8/88/Agatha_Bug_Venom.png",
         .image-container {
         obs: ""
            display: flex;
    },
            flex-direction: column;
    {
            align-items: center;
        group: "Bowl",
            justify-content: center;
         phrases: [
        }
            "Take a Bowl",          
        .image-item {  
        ],
            margin-bottom: 1em;
        img: "/images/0/0c/Agatha_Bowl.png",
            text-align: center;
        obs: "Ele também pode aparecer como um recipiente. O nome será Bowl"
         }
    },
         .image-item img {
    {
            display: block;
         group: "Bear Paw",
             margin: 0 auto;
         phrases: [
        }
             "Hands",
 
            "Weapons and legs of a giant",
         .variations-container {
            "Brown Claws",       
            display: flex;
         ],
            flex-wrap: wrap;
        img: "/images/b/b2/Agatha_Bear_Paw.png",
            justify-content: center;
        obs: ""
            margin-top: 1em;
    },
         }
    {
 
         group: "Bat Wing",
         .variation-item {
         phrases: [
            width: 30%;
             "Bloodsucker wing",
             box-sizing: border-box;
             "Bat Wing",
             margin: 10px;
             "Witches like to use",
             text-align: center;
             "Used in witch potions",          
            border: 1px solid #ccc;
        ],
             padding: 10px;
         img: "/images/3/3d/Agatha_Bat_Wing.png",
         }
        obs: ""
 
    },
         .variation-item img {
    {
            width: 100px;
         group: "Behemoth Fang",
            height: 100px;
        phrases: [
            display: block;
             "Ancient tooth",
            margin: 0 auto 10px;
             "It does not have teeth problems",
        }
             "Elder Fang",
 
             "Can kill you in one bite",       
         .swap-button {
        ],
            margin-top: 10px;
        img: "/images/b/bc/Behemoth_Fang.png",
             cursor: pointer;
        obs: ""
             width: 15px;
    },
             height: 15px;
    {
             background: url('https://wiki.pokexgames.com/images/2/2d/Comvip.png') no-repeat center;
        group: "Dracolaˈs Eye",
            background-size: contain;
         phrases: [
            display: block;
            "Darkness eye",
            margin: 0 auto;
            "Shadow eye",
         }
             "Eye of blood"
    </style>
        ],
</head>
        img: "/images/b/b1/Dracola%27s_Eye.png",
<body>
        obs: ""
    <form id="imageForm">
    },
        <div class="input-group">
    {
             <input type="text" id="imageSearch" placeholder="Digite o nome da imagem" autocomplete="off">
        group: "Dark Bat Wing",
            <div id="dropdown" class="dropdown"></div>
        phrases: [
        </div>
            "Rare wing",
 
            "Dark Bloodsucker wings",
        <div id="imageContainer" class="image-container hidden">
            "Dark piece of a flyer"
            <!-- As imagens e suas informações serão exibidas aqui -->
        ],
         </div>
         img: "/images/b/b8/Dark_Bat_Wing.png",
    </form>
        obs: ""
 
     },
     <script>
    {
        const imageList = {
        group: "Dragon Claw",
            'Charmander': {
        phrases: [
                imageUrl: 'https://wiki.pokexgames.com/images/6/65/004-Charmander.png',  
            "A giant lizard weapon",
                variations: [
            "Weapon of the monster with wings",
                    {  
            "It can rip you", 
                        imageUrl: 'https://wiki.pokexgames.com/images/3/3b/Clefable_Lovely-_Accessory.png',
        ],
                        description: 'Charmander XXX',
        img: "/images/5/50/Agatha_Dragon_Claw.png",
                        obtain: {
        obs: ""
                            url: 'https://wiki.pokexgames.com/index.php/Craft_Profissões_-_Estilista#Rank_E',
    },
                            text: 'Estilista'
    {
                        },
        group: "Frozen Human",
                        additionalImages: [
        phrases: [
                            'https://wiki.pokexgames.com/images/3/3b/Clefable_Lovely-_Accessory.png', // Frente
            "It's cold here, im freezing...",
                            'https://example.com/left1.png',   // Lado Esquerdo
            "Frozenhead",
                            'https://wiki.pokexgames.com/images/3/3b/Clefable_Lovely-_Accessory.png',   // Costas
            "I can't move...frozen...",
                            'https://example.com/right1.png'  // Lado Direito
        ],
                        ]
        img: "/images/thumb/1/1f/Frozen_Human.png/490px-Frozen_Human.png",
                    },
        obs: ""
                    {  
    },
                        imageUrl: 'https://wiki.pokexgames.com/images/3/3b/Clefable_Lovely-_Accessory.png',
    {
                        description: 'Charmander brabo.',
        group: "Flowers",
                        obtain: {
        phrases: [
                            url: 'https://wiki.pokexgames.com/index.php/Craft_Profissões_-_Estilista#Rank_E',
            "The best essence in nature",
                            text: 'Estilista'
            "Piece of spring",
                        },
            "A bouquet of",  
                        additionalImages: [
        ],
                            'https://example.com/front2.png'// Frente
        img: "/images/2/24/Agatha_Flowers.png",
                            'https://wiki.pokexgames.com/images/3/3b/Clefable_Lovely-_Accessory.png',   // Lado Esquerdo
        obs: ""
                            'https://example.com/back2.png',   // Costas
    },
                            'https://wiki.pokexgames.com/images/3/3b/Clefable_Lovely-_Accessory.png'  // Lado Direito
    {
                        ]
        group: "Fish Fin",
                    }
        phrases: [
                ]
            "It can strach you under water",
            },
            "Sharp piece of fish",
         };
            "Piece of Fish",   
 
        ],
        const imageSearch = document.getElementById('imageSearch');
        img: "/images/3/34/Agatha_Fish_Fin.png",
         const dropdown = document.getElementById('dropdown');
        obs: ""
         const imageContainer = document.getElementById('imageContainer');
    },
 
    {
         imageSearch.addEventListener('input', function() {
        group: "Gyarados Tail",
             const searchValue = this.value.trim().toLowerCase();
         phrases: [
             dropdown.innerHTML = '';
            "Piece of a sea giant",
 
            "Whip of lord of the sea",
             if (searchValue) {
            "A tail of a furious", 
                Object.keys(imageList).forEach(imageName => {
         ],
                    if (imageName.toLowerCase().includes(searchValue)) {
         img: "/images/2/20/Agatha_Gyarados_Tail.png",
                        const dropdownItem = document.createElement('div');
         obs: ""
                        dropdownItem.classList.add('dropdown-item');
    },
                       
    {
                        const imgElement = document.createElement('img');
        group: "Hook",
                        imgElement.src = imageList[imageName].imageUrl;
        phrases: [
                        imgElement.alt = imageName;
             "Used by captains",
                       
             "If you lose a hand you can use instead",
                        dropdownItem.appendChild(imgElement);
             "Pirates like it", 
                        dropdownItem.appendChild(document.createTextNode(imageName));
        ],
                       
        img: "/images/b/b7/Agatha_Hook.png",
                        dropdownItem.addEventListener('click', function() {
        obs: ""
                            showImageInfo(imageName);
    },
                            dropdown.style.display = 'none';
    {
                        });
        group: "Honey Comb",
                        dropdown.appendChild(dropdownItem);
        phrases: [
                    }
            "Sweet taste",
                });
            "Egyptians used to use",
 
            "House of a insect", 
                dropdown.style.display = dropdown.childNodes.length ? 'block' : 'none';
        ],
            } else {
        img: "/images/f/fa/Honey_Comb.png",
                dropdown.style.display = 'none';
        obs: "Ele também pode aparecer como um recipiente. O nome será Honey Comb"
            }
    },
        });
{
 
        group: "Leaves (sala das estantes)",
         document.addEventListener('click', function(event) {
        phrases: [
             if (!imageSearch.contains(event.target) && !dropdown.contains(event.target)) {
            "Used to synthesis of light",
                dropdown.style.display = 'none';
            "Hair of trees",
             }
            "Green sharps", 
        });
            "Leaves", 
 
        ],
         function showImageInfo(imageName) {
        img: "/images/5/54/Leaves_2.png",
            const imageInfo = imageList[imageName];
        obs: ""
            let imagesHtml = `
    },
                <div class="image-item">
{
                    <img src="${imageInfo.imageUrl}" alt="${imageName}">
        group: "Leaves (sala de poções)",
                </div>
         phrases: [
                <div class="variations-container">
             "Small Leaves",
             `;
            "Head of a small plant",
 
             "Small green piece of nature", 
             imageInfo.variations.forEach((variation, index) => {
            "Small pieces of spring", 
                imagesHtml += `
         ],
                    <div class="variation-item">
        img: "/images/f/fb/Agatha_Leaves.png",
                        <img src="${variation.additionalImages[0]}" alt="Variation Image" class="variation-image" data-variation-index="${index}">
        obs: ""
                          <div class="swap-button" data-variation-index="${index}"></div>
    },
                        <div class="image-info">
{
                            <b>Nome do Addon</b>: ${variation.description}  
        group: "Map",
                            <b>Como Obter</b>: <a href="${variation.obtain.url}" target="_blank">${variation.obtain.text}</a>
        phrases: [
                        </div>
             "Traveler best friend",
                    </div>
            "It does have continents",
                `;
             "You can see the shape of the earth",  
            });
        ],
 
        img: "/images/a/af/Agatha_Map.png",
            imagesHtml += '</div>';
        obs: ""
 
    },
            imageContainer.innerHTML = imagesHtml;
{
            imageContainer.classList.remove('hidden');
        group: "Onix Tail",
 
        phrases: [
            // Alternar imagens ao clicar no botão de troca
            "Rocks",
            const swapButtons = document.querySelectorAll('.swap-button');
            "Hard tail",
 
            "Whip of rocks"
             swapButtons.forEach(button => {
            "Whip of stones"
                const index = button.getAttribute('data-variation-index');
        ],
                const variation = imageInfo.variations[index];
        img: "/images/f/f8/Agatha_Onix_Tail.png",
                let currentImageIndex = 0;
        obs: ""
 
    },
                button.addEventListener('click', () => {
{
                    currentImageIndex = (currentImageIndex + 1) % variation.additionalImages.length;
        group: "Poké Ball",
                    const variationImage = button.previousElementSibling;
        phrases: [
                    variationImage.src = variation.additionalImages[currentImageIndex];
            "People dream using this in a journey",
                });
            "Critical for trainers",
            });
            "The Trainers Weapon"
         }
        ],
    </script>
        img: "/images/8/87/Pok%C3%A9_Ball.png",
</body>
        obs: "É a pokéball sozinha com o pokémon dentro."
</html>
    },
    {
        group: "Plasmother Remains",
        phrases: [
             "Green remains",
            "Green and disgusting",
            "Monster's plasma"
        ],
        img: "/images/e/e3/Plasmother_Remains.png",
        obs: ""
    },
    {
         group: "Piano",
        phrases: [
            "Maurizio pollini",
            "Used to create symphony",
            "Played by keys"
        ],
        img: "/images/8/83/Agatha_Piano.png",
        obs: ""
    },
    {
        group: "Pinsir Horn",
        phrases: [
            "It's Hard",
            "The most powerful weapon of a insect",
            "It's piece of an insect",
            "It's pick of in insect"
        ],
        img: "/images/e/e2/Agatha_Pinsir_Horn.png",
        obs: ""
    },
    {
        group: "Rat Tail",
        phrases: [
            "Future piece of raticate",
            "Rat Whip",
            "Small Whip",
        ],
        img: "/images/4/46/Agatha_Rat_Tail.png",
        obs: ""
    },
    {
        group: "Squirtle Hull",
        phrases: [
            "Squirtle´s house",
            "Turtle's shell",
            "Tortoises protection",
        ],
        img: "/images/2/29/Agatha_Squirtle_Hull.png",
        obs: ""
    },
    {
        group: "Soul Orb",
        phrases: [
            "Essence incorporeal",
            "Sphere of human essence",
            "Concentration of human energy",
        ],
        img: "/images/b/bb/Soul_Orb.png",
        obs: ""
    },
    {
        group: "Sandbag",
        phrases: [
            "It comes from rock",
            "Found in the desert",
            "Granular material",
        ],
        img: "/images/7/78/Agatha_Sandbag.png",
        obs: ""
    },
    {
        group: "Tube",
        phrases: [
            "Take an Erlenmeyer",
        ],
        img: "/images/3/39/Agatha_Tube.png",
        obs: "Ele também pode aparecer como um recipiente. O nome será Tube"
    },
    {
        group: "Tube 2",
        phrases: [
            "Take a Kitasatos",
        ],
        img: "/images/6/68/Tube_2.png",
        obs: "Ele também pode aparecer como um recipiente. O nome será Tube 2"
    },
    {
        group: "Trap",
        phrases: [
            "The most popular is used in bears",
            "Insect can step but a giant can die",
            "Do not step it"
        ],
        img: "/images/a/a6/Agatha_Trap.png",
        obs: ""
    },
    {
        group: "Voodoo Doll",
        phrases: [
            "It makes you a puppet",
            "Used in dark magic",
            "Has arm and legs do not move and feel pain"
        ],
        img: "/images/f/fd/Voodoo_Doll.png",
        obs: ""
    },
    {
        group: "Wood",
        phrases: [
            "Termite Food",
            "Plank",
            "Plant armor"
        ],
        img: "/images/f/f1/Agatha_Wood.png",
        obs: ""
    },
    {
        group: "Water Pipe",
        phrases: [
            "Take a Water Pipe",
        ],
        img: "/images/c/cf/Water_Pipe.png",
        obs: "Ele também pode aparecer como um recipiente. O nome será Water Pipe"
    },
];
</script>

Edição atual tal como às 03h33min de 17 de setembro 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: 30%;
           box-sizing: border-box;
           margin: 10px;
           text-align: center;
           border: 1px solid #ccc;
           padding: 10px;
       }
       .variation-item img {
           width: 100px;
           height: 100px;
           display: block;
           margin: 0 auto 10px;
       }
       .swap-button {
           margin-top: 10px;
           cursor: pointer;
           width: 15px;
           height: 15px;
           background: url('https://wiki.pokexgames.com/images/2/2d/Comvip.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 = {
           'Charmander': { 
               imageUrl: 'https://wiki.pokexgames.com/images/6/65/004-Charmander.png', 
               variations: [
                   { 
                       imageUrl: 'https://wiki.pokexgames.com/images/3/3b/Clefable_Lovely-_Accessory.png',
                       description: 'Charmander XXX',
                       obtain: {
                           url: 'https://wiki.pokexgames.com/index.php/Craft_Profissões_-_Estilista#Rank_E',
                           text: 'Estilista'
                       },
                       additionalImages: [
                           'https://wiki.pokexgames.com/images/3/3b/Clefable_Lovely-_Accessory.png',  // Frente
                           'https://example.com/left1.png',   // Lado Esquerdo
                           'https://wiki.pokexgames.com/images/3/3b/Clefable_Lovely-_Accessory.png',   // Costas
                           'https://example.com/right1.png'   // Lado Direito
                       ]
                   },
                   {  
                       imageUrl: 'https://wiki.pokexgames.com/images/3/3b/Clefable_Lovely-_Accessory.png',
                       description: 'Charmander brabo.',
                       obtain: {
                           url: 'https://wiki.pokexgames.com/index.php/Craft_Profissões_-_Estilista#Rank_E',
                           text: 'Estilista'
                       },
                       additionalImages: [
                           'https://example.com/front2.png',  // Frente
                           'https://wiki.pokexgames.com/images/3/3b/Clefable_Lovely-_Accessory.png',   // Lado Esquerdo
                           'https://example.com/back2.png',   // Costas
                           'https://wiki.pokexgames.com/images/3/3b/Clefable_Lovely-_Accessory.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]}" alt="Variation Image" class="variation-image" data-variation-index="${index}">
                           Nome do Addon: ${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;
                   variationImage.src = variation.additionalImages[currentImageIndex];
               });
           });
       }
   </script>

</body> </html>