Quero ser capaz de disparar um evento quando um usuário clica em um botão e, em seguida, mantém esse clique pressionado por 1.000 a 1.500 ms.
Existe uma funcionalidade principal do jQuery ou um plugin que já permite isso?
Devo lançar o meu próprio? Por onde devo começar?
javascript
jquery
events
SnickersAreMyFave
fonte
fonte
Respostas:
Edit : correção por AndyE ... obrigado!
Edição 2 : usando bind agora para dois eventos com o mesmo manipulador por gnarf
fonte
mouseleave
manipulador..bind('mouseup mouseleave', function() {
Codificado no ar (mas testado neste violino )
fonte
Eu fiz um plugin JQuery simples para isso se alguém estiver interessado.
http://plugins.jquery.com/pressAndHold/
fonte
Presumivelmente, você pode iniciar uma
setTimeout
chamadamousedown
e, em seguida, cancelá-lamouseup
(semouseup
acontecer antes de o tempo limite terminar).No entanto, parece que existe um plugin: longclick .
fonte
Esta é minha implementação atual:
fonte
fonte
Eu escrevi alguns códigos para tornar mais fácil
Veja no JSFiddle
Agora você precisa apenas definir o tempo de retenção e adicionar
clickHold
evento em seu elementofonte
Experimente isto:
fonte