2016-03-23 28 views
0

Birkaç kez kullanılması muhtemel bir tıklama yöntemim var. Bu yöntemde, birden fazla kez tıklanan düğmenin id erişmesi gerekiyor. Örneğin:Performans: Bir değişkeni başlatmalı mıyım yoksa 'bunu kullanmalı mıyım?

$('.elemental-selection').click(function() { 
    if(currentElement !== $(this).attr('id')) { 
     if($(this).attr('id') === 'element-water') { 
     ... 
     } 
     else { 
     currentElement = $(this).attr('id'); 
     } 
    } 
}); 

uzun if bloklar için Tabii ki bir switch-statement, peki ya $(this) sık kullanımı daha iyi $(this) olmak tanımlanan bir değişken ile ikame olurdu olduğunu merak ediyorum (ve ne olursa olsun kullanabilirsiniz ondan istediğim yöntem). Oradan ve sonra, this yerine değişkene başvururdum.

Peki, daha iyi bir karar nedir? Teşekkür ederim.

+0

için yerel değişken kullanın emin olun. – Bergi

+0

@Bergi Tam olarak aynılar. –

+0

Tabii ki onlar, bu yüzden bir yedek olarak tavsiye ettim. – Bergi

cevap

0

$ (this) .attr mutliple times'ı kullanırken jQuery'nin bu seçimi birkaç kez yapması gerekiyor demektir.

$ (this) .attr ('id') için bir değişkeni oluşturmanız yeterlidir, çünkü sadece bir kez attr almak için gerekli olan yöntemleri gerçekleştirmeniz gerekir.

Ayrıca sadece jQuery kullanmak ve this.id` doğrudan `için gitmez bu özellik kimliği

+0

Teşekkürler! Tam olarak aradığım bilgiler. Ben oy verdim ama bunu nasıl yapılacağını anlayamıyorum. Neyse, tekrar teşekkürler! –

+0

Re'ye ihtiyacınız yok. Sadece @stackovertroll – Andy

+0

Oh cevabının yanındaki onay işaretini tıklayın. 4 dakika beklemem gerektiğini söylüyor lol. –

İlgili konular