2011-07-07 26 views
5

Tarayıcının başka bir sayfaya gidip gitmediğini veya kapatıldığını kontrol etmem gerekiyor. Benim fikrim; Tarayıcı başka bir sayfaya yönlendiriliyor mu algılıyor

  1. küresel değişkeni vücudun unload olaya başka bir sayfaya
  2. Kontrol eğer isNavigating gerçek nereye taşınacak her çapanın isNavigating = true yapmak var isNavigating = false;
  3. Bind tıklama etkinlik oluşturun.

Diğer fikirler? Öneriler?

+1

Ben bunu açıkça onlar çıktıktan olup olmadığını bilmek istiyorum veya yapmak için soruyu başka sözcüklerle isteyebilirsiniz düşünüyorum onlar kapanış olup olmadığını (yani sadece ya oluyor bilmek, oluyor ki bilmek). Şu anda yazıldığı gibi, aralarındaki farkı anlayabilmek isteyip istemediğinize dair belirsizdir. – ADW

+0

Evet, doğru anladınız. –

+0

Bir kullanıcı adres çubuğuna yeni bir web sitesi girip enter tuşuna basıyorsa, o ve sekmeyi kapatan kullanıcı arasındaki farkı söylemenin bir yolu yoktur. –

cevap

0

Sadece pencerenin onunload olayına bağla.

+0

Zaten yaptım. Sayfada gezinmeyi veya kapanmayı bilmem gerek. –

7

Bunu aşağıdaki komut dosyası ile yapabilirsiniz. Bununla birlikte, navigasyonu iptal etmeyi planlıyorsanız, rahatsız etmeyin. Ancak, rahatsız etmeyi planlamıyorsanız, yalnızca rahatsız etmeyin. Bildiğim kadarıyla mümkün değil. Aşağıdaki kod, kullanıcının bir bağlantıyı tıklatıp tıklatmadığını denetler. Aşağıdaki kod, kullanıcının bir bağlantıyı tıklatıp tıklatmadığını kontrol etmektedir.

var checkAnchorClick = false; 

$(document).ready(function() { 
    $("a").live("click", function() { 
     checkAnchorClick = true; 
    }); 
}); 

$(window).unload(function() { 
    if (checkAnchorClick) 
     alert("User clicked a link..."); 
    else 
     alert("Something else..."); 
}); 
+1

aslında siz "tür" iptal edebilirsiniz, ancak kullanıcının onaylamak zorundadır: http://jsfiddle.net/thomas4g/AA3qY/3/ –

+0

@ Ümit Akkaya http://jsfiddle.net/thomas4g/AA3qY/3/bir linke tıklandığında, sekmeyi kapatırken, tarayıcıyı kapatırken ya da başka bir durumda, onönce yüklemenin işe yaradığını gösterir. –

İlgili konular