2012-06-17 48 views
1

我的身體背景存在jQuery視差效應問題。下面是代碼:jQuery視差效果問題

jQuery(document).ready(function($){ 
    window.onscroll = function() { 
     var bh = $(document.body).height(); 
     var wh = $(window).height(); 
     var st = $(window).scrollTop(); 
     var p = wh/bh; 
     var pp = (st * p); 
     $('body').css({backgroundPosition: '50% -'+pp+'px'}); 
    } 

}); 

此代碼是偉大的,但之後我加入了我的標誌和導航菜單頭球他們關閉背景的某些部分不那麼好看足夠多了。這裏的鏈接也是http://layot.prestatrend.com/順便說一下,我的標題的高度爲129px。似乎我需要使背景位置+ 129px,但無法想出如何使它與JavaScript正常工作。請幫忙嗎?

+0

如果您向我們提供了jsFiddle沙箱,那就太好了。 – madfriend

回答

0

只需添加位置:

var topPosition = pp + 129; 
$('body').css({backgroundPosition: '50% -'+topPosition +'px'}); 

(或)

$('body').css({backgroundPosition: '50% -'+ (pp + 129) +'px'}); // the parentesis avoid concatenation also 

這樣你會正確地補償你想添加。不要在字符串連接中執行它,因爲瀏覽器可能會追加==>這將導致如下所示:對於pp=99 ==>pp+129 = '99129'