2009-04-23 25 views
6

girin. Birisi, jQuery'nin bir kullanıcının bir bağlantıyı tıklattığında veya bir sekmede bir bağlantıyı tıklattığı ve isabetlerin girdiği bir işlevi çalıştırması için bir yolu bilip bilmediğini merak eder.Link'in ne zaman etkinleştirildiğini algıla - ya da tıkla ya da sekme ile girin ve

Bir bağlantının etkinleştirilmesini engellemek ve sayfa değiştirilmeden önce bir eylem gerçekleştirmek istiyorum, ancak her iki durumda da yapmak istiyorum.

cevap

9

'tık' olayı her iki durumda da tetiklenecek, bu istediğini alacak:

$('a').click(function(){ 
    alert('perform action here'); 
}); 
+0

o tıklandığında bağlantının URL'sini almak mümkün mü? –

+2

emin: uyarı ($ (this) .attr ('href')); – pjesi

+0

Veya 'this.href;' Veya, bazı tarayıcılarda, this.getAttribute ('href'); 'jQuery bu bölüm için gerekli değildir (veya olmamalıdır). –

2

Oldukça bulunuyor basit aslında ... Bir öğeye girerken, tarayıcılarda bir tıklama olarak hareket eder. Özel bir şey yapmaya gerek yok.

$('a.links_to_bind').bind('click', function() { 
    /* do your stuff... */ 
    return false; 
}); 

Düzenleme: Eğer sayfayı eylemleri tamamlandıktan sonra değiştirmek isterseniz , bunu return false şartlı statemenet eklemek isteyebilir. gibi bir şey:

if(everythings_good) { 
    return true; 
} else { 
    return false; 
} 
-1
$('a').keydown(function() { 

return false; // Prevent default action 

}); 

$('a').keyup(function(event){ 

    if(event.keyCode == '13'){ 

      $(this).find('button.mychoice').click(); 

    } 

}); 


// This does the trick for both IE and FF. 
İlgili konular