0
所以,我有一個非常獨特的問題(基於架構)。具有局部視圖的光滑滾動小車
有在this homepage平滑滾動。它的工作原理罰款。如果您單擊頂部欄中的「註冊」,表單(局部視圖)顯示正常。現在點擊'關於'或'演示',併發生一些瘋狂的雙滾動。另外,假設我們點擊'關於'(點擊註冊後),雙滾動發生,如果你再次滾動並再次點擊它,它會正常工作,但現在向上滾動並點擊'Demo',它就會發生再次。這可以變得相當有趣交替點擊哈哈......這不是重點,可悲的是。
我是一個絕對的初學者,當談到JavaScript和我一直在嘗試這幾天,但沒有。
這是正在使用的「關於」 &「演示」按鈕的代碼:
//Smooth scroll - excludes register
$('a[href*=#], a[href*="/#"]').click(function() {
var hash = $(this).attr('href');
hash = hash.slice(hash.indexOf('#') + 1);
if (hash) { $.scrollTo(hash == 'top' ? 0 : 'a[name='+hash+']', 500); window.location.hash = '#' + hash; return false; }
});
這是註冊表單:
if (typeof window.history.pushState == "function") {
function showRegister() {
if (window.location.pathname == '/home/register') {
var form = $('#pg-signup-register');
$('#landing-register-clip').css({ 'max-height': window.innerHeight + 'px' });
form.css({
'margin-top': ((window.innerHeight - form.outerHeight())/2) + 'px'
});
$('#landing-register').animate({
height: window.innerHeight + 'px'
}, 1000);
$.scrollTo(0, 500);
} else {
$('#landing-register').animate({
height: 0
}, 1000);
}
}
window.addEventListener('popstate', showRegister);
// Smooth scrolling - register form
$('a[href^="/home/register"], a[href="/"]').click(function() {
if (window.location.pathname != $(this).attr('href'))
window.history.pushState(null, null, $(this).attr('href'));
showRegister();
return false;
});
}