Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

201
Visualizações
Con HTML5, ¿se puede hacer que un elemento sea 'invisible' para la interacción de arrastrar y soltar?

Todavía intento combinar arrastrar y soltar y mover un elemento con el mouse . Tengo problemas con dragenter y dragleave que no se llama para un elemento principal cuando muevo el elemento secundario. Esto parece bastante natural porque el elemento siempre se desplaza sobre el elemento principal y evita que se llame a dragenter para el elemento principal.

Traté de llamar a stopPropagation() y preventDefault() en dragenter dragenter , dragleave , dragover , dragstart y drag para el elemento secundario, pero sin ningún efecto real.

Otra pregunta parece abordar un problema similar pero sin una solución real si lo obtengo correctamente.

Tal vez esté demasiado oscuro aquí abajo en la madriguera del conejo para ver lo obvio: ¿cómo evito que el elemento arrastrado evite que se dragleave dragenter sus padres?

En otro nivel, solo quiero saber si el elemento se ha colocado fuera del elemento principal (para luego devolverlo a su posición original). ¿Hay un enfoque más fácil?

Aquí está mi código actual : en el estado actual, el elemento se mueve con el mouse y, por lo tanto, evita que se llame dragleave dragenter

Desactivar el movimiento real de draggable_element hará que se llame a dragleave dragenter salir del área principal/objetivo, pero también cuando se ingrese el elemento arrastrado (lo que de alguna manera no puedo evitar).

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Lo encontré: en lugar de jugar con los eventos de arrastrar/soltar, solo tiene que desactivar pointer-events para el elemento arrastrado para evitar eventos no deseados de dragenter / dragleave para el padre y volver a encenderlo después (tiene que estar activado de forma predeterminada para habilitar arrastrando en primer lugar).

 draggable_element.addEventListener("dragstart", (e) => { e.srcElement.style.pointerEvents = "none"; ... // rest of code }); elem.addEventListener("dragend", (e) => { e.srcElement.style.pointerEvents = "auto"; ... // rest of code });

Aquí hay un ejemplo de trabajo: https://jsfiddle.net/03a9s4ur/10/

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda