2012-11-16 5 views
5

En ilerleyin neden olur bana sonsuz bir kaydırma bölümü gibi oldukça işe yarayan bir şey veriyor. (Gerçek kod birkaç hareketli parça vardır, ama bu önemli bir parçasıdır.)Yeniden oluşturma liste şablonu sayfası Bazı böyle kabaca bakmak şablonları

Gerçi loadMore tıkladığında, her iki bana geri Sayfanın en aşağı ve verilirse daha fazla veri çeker, sonsuz kaydırma amacını yutmak yerine. Olması gereken yere geri kaydırmak için bazı javascript atabilirim, ancak sayfa titizlikle atlamadan kötü bir titreme bırakır.

Tüm öğelerin yanı sıra div numaralı öğenin tümünü güncellemekten korumak için preserve numaralı telefonu kullanarak denedim ancak kaydırma işlemini durdurmuyor gibi görünüyor. Ayrıca, herhangi bir şans olmadan, hemen hemen her şey hakkında {{#isolate}} blok yerleştirmeyi denedim.

Sayfa yeniden oluştururken sayfayı kaydırmamak için yapabileceğim bir şey var mı? Şablonlar farklı mı oluşturuluyor? Kaçırdığım preserve veya {{#isolate}}'un bir yönü var mı?

cevap

8

<a href="#">Load more...</a> sayfanız sayfanın en üstüne gelmesini sağlayacağından sayfanın en üste gelmesi sağlanmıştır. Href bağlantılarınız "#" olduğunda, sayfa # "öğe kimliği" ile DOM öğesine kayar. Sadece "#" ile bir bağlantı tıklandığında en üste gider.

Template.loadMore.events({ 
"click": function(event) { 
    event.preventDefault(); 
    Session.set("itemCount", Session.get("itemCount") + 10); 
} }) 

Bu sayfayı yeniden

  • Daha da iyisi duracaktır:

    1. önle tıklama etkinliğinde varsayılan davranış (kolay seçenek):

      İki seçeneğiniz vardır yapmak <a href="#">Load more...</a>, "#{{_id}}" linkine bağlı olarak sayfa, sağladığınız kimlikle otomatik olarak öğeye kayar. Bu, şablonların yeniden yapılandırılmasını ve belki de son öğenin kimliğini size vermek için şablonda bir yardımcı yöntem gerektirecektir. Ancak, sayfanızı tam istediğiniz yere yükler. Tabii ki

  • +0

    . Kim uzun zamandır baktığım bu ormanın ağaçlardan oluşacağından şüphelenebilirdi. – user1830246