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

246
Visualizações
Gojs React + HTML arrastrar, desactivar la ubicación de colocación en nodos ya existentes
div.addEventListener("drop", event => { // prevent default action // (open as link for some elements in some browsers) event.preventDefault(); // Dragging onto a Diagram if (div === myDiagram.div) { var can = event.target; var pixelratio = myDiagram.computePixelRatio(); // if the target is not the canvas, we may have trouble, so just quit: if (!(can instanceof HTMLCanvasElement)) return; var bbox = can.getBoundingClientRect(); var bbw = bbox.width; if (bbw === 0) bbw = 0.001; var bbh = bbox.height; if (bbh === 0) bbh = 0.001; var mx = event.clientX - bbox.left * ((can.width / pixelratio) / bbw) - dragged.offsetX; var my = event.clientY - bbox.top * ((can.height / pixelratio) / bbh) - dragged.offsetY; var point = myDiagram.transformViewToDoc(new go.Point(mx, my)); myDiagram.startTransaction('new node'); myDiagram.model.addNodeData({ location: point, text: event.dataTransfer.getData('text'), color: "lightyellow" }); myDiagram.commitTransaction('new node'); // remove dragged element from its old location if (remove.checked) dragged.parentNode.removeChild(dragged); } // If we were using drag data, we could get it here, ie: // var data = event.dataTransfer.getData('text'); }, false);

Estoy usando arrastrar y soltar HTML, y soltando en el área Canvas (GOJS). Hasta ahora funciona bien, puedo arrastrar elementos de un componente (dando draggable="true") a los elementos y soltándolos en otro componente usando la función onDrop y la función onDragOver, y una vez soltados, estoy construyendo nuevos nodos

Todo funciona como se esperaba, tengo 2 consultas básicamente

  1. No quiero arrastrar elementos para superponer nodos ya existentes. Es decir, cada vez que estoy arrastrando e ingresando al área de colocación, puedo ver el signo + verde y ahora puedo colocarlos en los nodos ya existentes (imagina que ya hay 3 nodos para algún diagrama), de modo que se superpongan, de alguna manera NECESITO para restringir y mostrar el signo X cuando se superpone a los nodos ya existentes y NO debe permitir que se coloque en otros nodos

  2. Cuando arrastré y solté el elemento, ¿hay alguna forma de resaltar el nodo, dando la impresión de que es el nodo recién agregado?

Estoy tomando referencia de esta URL https://github.com/NorthwoodsSoftware/GoJS/blob/master/samples/htmlDragDrop.html

Puede alguien ayudarme con eso

about 4 years ago · Juan Pablo Isaza
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