Bu makaleyi okuduktan sonra net.tutsplus.com/tutorials/javascript-ajax/14-helpful-jquery-tricks-notes-and-best-practices/this.href kullanmanın daha verimli olduğu sonucuna vardım.
Ancak, projelerimden birinde kullanmayı denediğimde, this.href'un yalnızca href değil, aynı zamanda bir web sitesinin URL'sini de döndürdüğünü gördüm. Örneğin, <a href="tab-04"></a>
, sayılı belge, http://example.com/abc/tab-04 ve $ (bu) değerini döndürecektir. Ttr ('href') yalnızca tab-04'ü döndürecektir.
Burada bir örnek görebilirsiniz http://jsfiddle.net/UC2xA/1/.
$ (this) .attr ('href') tam ihtiyacım olanı ve daha fazlasını vermez.
Benim sorum bu sadece sekmeyi-04 iade edeceğini, nasıl yazabiliriz (veya ne gerekiyorsa yapacakları) böylece this.href mı?
DÜZENLEME
Doug
this.getAttribute('href')
: ardından durum için
, bu jQuery kullanmak istemiyorsanız
$(this).attr("href")
kullanmak daha iyidir, sadece düz JavaScript kullanarak bir başka çözüm, var href özniteliği (HTML kaynak koduna kodlanmış olan), sonra da $ (this) .attr ('href') 'komutunu kullanın. Tam URL'yi istiyorsanız, 'this.href' kullanın. –
this.href'u kullanacak olursanız, verimliliğinden dolayı 'daha fazlasını yap' için yeniden yazın; tür, amacı yener. – Joey
-1 için "this.href'i kullanmanın daha verimli olduğu sonucuna vardım." Hayır, gerçekten değil, ama kesinlikle [çok erken] optimize edersiniz (http://en.wikipedia.org/wiki/Program_optimization#When_to_optimize). Verimlilikte değişme iddiası, var ise bile, tespit edilebilir olma ihtimali sıfırdır. – Malvolio