Sen gerekir only use AJAX calls to load dynamic data that is not known at the moment the page is loaded. Yığın taşması verilen bir soru / cevap "yorumlar" linkine tıkladığınızda, örneğin, bir AJAX çağrısı dinamik veri yüklemek için yapılır. Bu yorum bağlantısını değil, sayfa yükleme sonucu tıklayarak kullanıcı bir sonucudur. Eğer sayfa yüklendiğinde anda bu yorumları göstermek gerektiğini bilmiyorum, bu yüzden bu durumda bir AJAX arama yapmak için uygundur.
Sen gerekir use templating to show any data that is known at the moment the page is loaded. Bu daha kolay JavaScript devre dışı insanlar (ben çok bilmiyorum) ile anlaşma yapar ve sunum mantığının net bir ayrılmasını sağlar. Çiftleşmiş kullanmanın bir diğer önemli yararı önemli ölçüde müşterinin tarayıcısından yapılan HTTP istekleri sayısını azaltabilirsiniz olduğu gerçektir.
Bu gecikme, bant genişliği, sizin en büyük engel değil mobil tarama dünyada özellikle önemlidir. Mobil Safari'de, örneğin, a single HTTP request to a Smarty-templated page will load significantly faster than a request to load a Javascript-templated page, beş ya da altı ek HTTP istekleri yapar. EDGE, 3G, ve diğer non-wifi mobil veri hizmetlerini kullanırken bu özellikle doğrudur. Aslında, bu da Yahoo'nun Best Practices for Speeding Up Your Website strong> ilk kılavuzdur o kadar önemlidir.
İdeal olarak, gereken zamanda gracefully degrade functionality when Javascript is disabled. Iyi bir örneği otomatik tamamlama arama kutusu olduğunu. Bu Yazarken arama terimleri sihirli görünür önerdi gerçekten serin, ama Javascript kapatmak, hala işlevsel bir arama kutusu var. Bu hizmeti iyi bir bozulma klasik bir örnek. Yığın taşması genellikle katı olmayan bir Javascript deneyimi sağlayarak büyük bir iş yok. Kısa düşüyor bir yerde yorumlarda olduğunu. Javascript, özürlü sadece en popüler açıklamalar görüntülenir ve yeni yazabilmek olduğunda devre dışı bırakılır.
Kesinlikle gerekli olmadıkça, you should think of Javascript as a bonus feature that might not be enabled, not as something that should be used to construct critical pieces of your website. Istisnalar (bazı şeyler sadece Javascript olmadan yapılamaz) açıkça vardır. Javascript kapalı ile taşması çok kullanışlı olduğunu, örneğin, fark edeceksiniz. Siz Yeni yanıt gönderildiğinde gerçek zamanlı güncellemeleri, ya da fantezi gerçek zamanlı önizleme Markdown almazsınız, ancak temel işlevi hala var. Bütün "ağır kaldırma" HTML ve CSS ile yapılır. Javascript sadece kek üzerine (kuşkusuz çok iyi buzlanma) krema. Bu bir yan not tür, ancak bu söz kadar önemli.