1
resposta

Javascript selecionando div durante interacao com botao

Fiz um projeto próprio, comecei pelo HTML me inspirei e meio que criei meu próprio desafio. Um perfil DEV baseado no Ragnarok Online, meu jogo favorito, porem, estou tendo um problema com uma das funcionalidades do javascript, fiz duas setas na div do personagem para ele ter um turn around, para ele pode aparecer em varios angulos. Na seta da direita funciona bem, mas quando clico para esquerda por algum motivo ele seleciona a caixa onde o personagem está e eu nao estou conseguindo encontrar o motivo por nada

Essa e a pagina que eu criei

https://kauegomes.github.io/RagnarokDevProfile/

Esses sao os arquivos

https://github.com/KaueGomes/RagnarokDevProfile

O trecho do codigo js que fiz, chamei de slideshow

var slideIndex =1;
showSlides(slideIndex);

function plusSlides(n){
    showSlides(slideIndex += n);
}

function currentSlide(n){
    showSlides(slideIndex = n);
}

function showSlides(n){
    let i;
    let slides = document.getElementsByClassName('Personagem');
    if (n> slides.length){
        slideIndex=1;
    }
    if (n<1){
        slideIndex= slides.length;
    }
    for(i=0;i<slides.length;i++){
        slides[i].style.display = "none";
    }
    slides[slideIndex-1].style.display = "block";
}
1 resposta

Olá Kaue, tudo bem?

Peço desculpas pela demora em obter um retorno

Para reparar esse erro podemos fazer com que a imagens do personagem não seja mais clicáveis sendo assim ela não fica azul, dando aquele incomodo ao clicar na seta da esquerda.

Podemos reutilizar um classe já criada por ti chama "Personagem" que está ligada a todas imagens do personagem, sendo assim no arquivo css podemos utilizar o seguinte bloco de código:

.Personagem{
    user-select: none;
}

A propriedade CSS user-select: none é usada para desabilitar a seleção de texto em um elemento HTML. Quando essa propriedade é aplicada a um elemento ou a um seletor, o usuário não poderá selecionar o texto desse elemento com o cursor do mouse ou por meio de atalhos de teclado, como Ctrl + A.

Desse modo obtemos o seguinte resultado:

img de um personagem girando após os cliques na seta, como esperado pelo aluno

Espero ter ajudado, qualquer dúvida, me coloco à disposição! Bons estudos!

Sucesso

Um grande abraço e até mais!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!