Primeiros passos / Como funciona

Como funciona

intent-link observa como o usuário se move pela página e estima de qual alvo visível ele está se aproximando. Quando o sinal é forte o bastante, chama a função onIntent desse alvo.

1 · Observar o movimento

No desktop, ele lê o movimento do ponteiro. Em dispositivos de toque, lê a rolagem. Só desperta quando o usuário interage e volta a descansar quando o movimento para.

2 · Decidir o alvo

O mecanismo compara o movimento do usuário com os alvos de intenção visíveis. Alvos fora da viewport não entram nos cálculos.

3 · Executar o trabalho

Quando um alvo se torna provável o bastante, seu callback onIntent é executado uma vez. Ele pode ser executado novamente se o usuário se afastar e voltar depois.

Desktop e celular

  • No desktop, o mecanismo acompanha o movimento bidimensional do ponteiro.
  • No celular, acompanha a rolagem vertical e é ativado na primeira rolagem.
  • Alvos ocultos ou fora da tela são ignorados, inclusive elementos escondidos por CSS responsivo.

A ideia da física

Imagine cada alvo como um pequeno poço de gravidade. O movimento cria energia cinética, e a distância até o alvo cria energia potencial. Um ponteiro ou uma rolagem rápida ainda tem impulso, enquanto um movimento lento perto de um alvo parece estar se acomodando ali. O mecanismo usa uma regra parecida com a termodinâmica para tratar esses destinos de baixa energia como escolhas mais prováveis.

Os dados de movimento do navegador contêm pequenos saltos e erros. Um filtro de Kalman suaviza esse ruído antes do cálculo físico. Em termos simples, ele ajuda a separar movimento intencional de medições instáveis. Tudo isso fica dentro da biblioteca; seu app só recebe onIntent.

Leia o artigo de pesquisa. Este é um link provisório até a publicação na ACM.