2010-08-26 9 views
6

dblclick() öğesine abone olur ve DIV öğesi için() işaretini tıklatırsam ve DIV üzerinde fareyle çift tıklatırsam, click() işleyicisi dblclick() çağrılmadan önce önce arar. Dblclick() 'den önce click() işleminden nasıl kaçınılır?jQuery DIV öğesi için tıklatma() ve dblcick() nasıl ayırt edilir?

GÜNCELLEME: Soru Prevent click event from firing when dblclick event fires'dan önce sormuş. Ama burada da iyi cevaplar var.

+0

Bu sorundan dolayı, tıklama eyleminin çift tıklatıldığında da gerçekleşmesini istemediğiniz sürece, aynı öğede hem bir tıklama hem de çift tıklama için kötü GUI tasarımının olması normaldir. – RoToRa

cevap

2

Muhtemelen bunu yapmanın en iyi yolu: Tıklatma işleyici işlevinde bir zaman aşımı ayarlayabilir ve çift tıklatma işleyici işlevindeki zaman aşımını kaldırabilirsiniz.

Zaman aşımı, gerçekten gerçekte gerçekleşmesini istediğiniz bir işlevi çağırabilir ve bu şekilde dblclick() işleviniz, kullanıcılar çift tıklattığında ne olacağını işlemiş olmanıza neden olabilir.

+0

Anlaştık, bunu yapmanın tek yolu budur. OP, jQuery belgelerinin, tıklama ve dblclick işleyicilerini tek bir öğeye bağlamak için tavsiye edilmediğini belirtmelidir. http://api.jquery.com/dblclick/ – Aaron