Kinetic JS - Existe uma maneira de retornar as coordenadas x, y enquanto arrasta?

StackOverflow https://stackoverflow.com//questions/24027010

  •  21-12-2019
  •  | 
  •  

Pergunta

Estou fazendo um controle deslizante que se move para cima e para baixo com Kinetic JS.Aqui está meu botão de alternância arrastável:

this.toggle = new Kinetic.Rect({
        x: (this.stage.getWidth() / 2) - 20,
        y: 210,
        shadowColor: '#95BA91',
        shadowOffsetX: 5,
        shadowOffsetY: 5,
        width: 40,
        height: 15,
        fill: '#FFF',
        cornerRadius: 3,
        draggable: true,
        dragBoundFunc: function( pos ) {
            return {
                x: this.getAbsolutePosition().x,
                y: pos.y
            }
        }
    });

Estou tentando retornar a coordenada y da alternância para poder incrementar um contador com base na altura da alternância.Cada método que tentei retorna o valor original de y durante e após o arrasto.Existe uma maneira de obter o valor de y alterado?Aqui estão os métodos que já tentei:

getY(), getAbsolutePosition().y, dragDistance(), .y(), getOffset().y, getPosition().y

Foi útil?

Solução

Acho que você entendeu mal o uso de dragBoundFunc.

dragBoundFunc é usado principalmente para restringir de alguma forma o movimento da forma quando ela está sendo arrastada.

O que você deve fazer é anexar um dragmove ouvinte de evento para sua forma de alternância, que será acionada quando você arrastar a forma.

Dê uma olhada neste jsfiddle

A coordenada Y é impressa no console do navegador sempre que a forma de alternância é arrastada.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top