SORU
31 AĞUSTOS 2009, PAZARTESİ


olay.() preventDefault vs return false

Belirli bir olayı harekete sonra yürütmeden gelen diğer olay işleyicileri önlemek için istediğim zaman, iki tekniklerden birini kullanabilirsiniz. Örneklerde jQuery kullanırım, ama bu düz-JS de geçerlidir:

1. event.preventDefault()

$('a').click(function (e) {
    // custom handling here
    e.preventDefault();
});

2. return false

$('a').click(function () {
    // custom handling here
    return false;
});

Olay yayılımı durdurmak için bu iki yöntem arasında herhangi bir fark var mı?

Bana, return false; daha basit ve kısa bir yöntem yürütme muhtemelen daha az hata eğilimli olduğu için. Bu yöntem ile, muhafaza, ayraç, vb doğru hakkında hatırlamak zorunda.

Ayrıca, geri arama, ilk parametre yöntemi arayabilir tanımlamak için var. Belki de, bu gibi yapmama ve preventDefault kullanmalıyım neden? Daha iyi yolu nedir?

CEVAP
31 AĞUSTOS 2009, PAZARTESİ


return falsejQuery bir olay işleyicisi içindeetkili e.preventDefault e.stopPropagation her iki arama aynıdır jQuery.Event object. geçti

e.preventDefault() köpürme meydana gelen olay önleyecektir varsayılan olay engeller ve return false her ikisini de yapar. Bu davranış farklı olduğunu unutmayınnormal(non-jQuery) olay işleyicileri, özellikle, return false does not stop the event from bubbling up.

Kaynak: John Resig

Any benefit to using event.preventDefault() over "return false" to cancel out an href click?

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • 3DS Max Tutorials

    3DS Max Tuto

    4 AĞUSTOS 2013
  • listedabive

    listedabive

    30 Ocak 2007
  • FF Radioo

    FF Radioo

    14 ŞUBAT 2007