2016-03-30 20 views
0

Bu yüzden bir giriş sayfasındaki kaydırma formuna sahip bir menü sayfam var.Bir menüde Javascript kaydırma efekti

<li><a href="{{ 'home'|page }}" class="scroll">Contact</a></li> 

Ve ana sayfasında bir cazibe gibi çalışır ancak bir kullanıcı farklı bir sayfaya ise, hakkında söylenecek veya blog ve İletişim bağlantısını o üzerinde tıklama/o bir ana sayfada bir yönlendirme alır ama kaydırma etkisi let asla gerçekleşmez.

Bir kullanıcı farklı bir sayfada olduğunda ve bu bağlantıyı tıklattığında bunu yapmak mümkün mü? kaydırma için

Kod geçerli:

$(function(){$(".scroll").click(function(){$("html,body").animate({scrollTop:$("#contact").offset().top},"500");return false})}) 

Konsolu günlük sonra yezzz öneri: diğer sayfalarının ana sayfasında #contact etmenizi gönderiyorsanız

enter image description here

+1

EDIT: oops misread ... Sayfa oluşturulduktan sonra href'deki url nedir? Bunların hepsi example.com/#contact'a işaret ediyor mu? – yezzz

+0

Btw, bu kaydırma senaryosu tema ile geldi? Ama onu değiştirebilirsin? – yezzz

cevap

0

, o zaman tıklamayı tetikleyebilecek :

$(function(){ 
    $(".scroll").click(function(){ 
     $("html,body").animate({scrollTop:$("#contact").offset().top},"500"); 
     return false; 
    }); 
    if (window.location.hash == "#contact") $(".scroll").trigger("click"); 
}); 
+0

Aslında, bu bağlantı sadece bir ana sayfaya yönlendiriyor. Ekim CMS, en iyi dokümanlara sahip değil. Bu nedenle, {{'home' | page}} adresine nasıl #contact ekleyeceğinizi bilmiyorum. – Kira

+0

Site yaşıyorsa bana URL'yi verebilir misiniz? – yezzz

+0

İşte burada. Bu bitmiş değil bu yüzden ben kontrol etmek için 10-20 dakika için izin vereceğim http://petfriendlyapp.com/ – Kira

0

İyi düşünmüştüm. Localstorage kullanarak bir atış. Varsayılan komut dosyasını (tüm sayfalarda) aşağıdaki şekilde değiştirin ve konsolunuzu hatalardan kontrol edin.

$(function(){ 
    $(".scroll").click(function(){ 
     $("html,body").animate({scrollTop:$("#contact").offset().top},"500"); 
     return false; 
    }); 
    if (typeof(Storage) !== "undefined") { 
     // localstorage is supported  
     if (location.pathname === "/") { 
      // we're on homepage 
      if (localStorage.triggerScroll == 1) { 
       localStorage.triggerScroll = 0; 
       $(".scroll").trigger("click"); 
      } 
     } else { 
     // we 're on another page 
     $(".scroll").click(function(){ 
      localStorage.triggerScroll = 1; 
     }); 
    } 
}); 
+0

Ne yazık ki bu kod tuvalimdeki menüyü kırar, bu yüzden denemiyorum bile. Omg neden bu kadar zor ... – Kira

+0

hmm Ne olduğunu görmeden bilemezdim. Konsolda herhangi bir hata oluştu mu? – yezzz

+0

Gördüğünüzde, kodu yayınladıktan birkaç dakika sonra düzenledim? – yezzz