2011-06-20 4 views
3

自分のサイトの初期ベータ版で作業している友人を助けるために、固定背景画像をdivの下端からずらして表示しないように短いjQueryスニペットを書きました。 FirefoxとSafari、そしてIE8でもすべてがうまくいきますが、Chrome(Win7とOSX 10.6の両方にあります)は、バックグラウンドの添付ファイルがスクロールから固定に変更されると問題があるようです。バックアップし、そのチャンクをスクロールバックして繰り返します(説明するのは難しい、下のデモリンクを確認してください)。他の誰かがまったく遭遇したことはありますか?ChromeのjQueryの背景添付

のjavascript:

$(document).ready(function(){ 
var imageHeight = 585; 
$(window).scroll(function(){ 
    if($(window).scrollTop() + $(window).height() > ($("div.main").height() + $("div.main").offset().top)) { 
     $("div.main").css("background-position", "0px " + ($("div.main").height() - imageHeight) + "px"); 
    $("div.main").css("background-attachment", "scroll"); 
    }else{ 
     $("div.main").css("background-position", "right bottom"); 
     $("div.main").css("background-attachment", "fixed"); 
    } 
}); 

})。

ライブデモ:なしリピート: http://mydigitalworld.dyndns.info/dns.html

+2

明らかに、これはChrome/Win7で起こることです:http://grab.by/aop1 –

+1

@David Yod、最新の夜間のChromiumでも同じことが起こります。 – omninonsense

+0

@David、まさに私が見ているもの。 MacとUbuntuでも同じです。 – pettazz

答えて

-1

あなたは、バックグラウンド・リピートを使用する場合があります。

私はあなたが達成しようとしていることと、それがCSSだけではできない理由を明確にしていません。

+0

divの最後を過ぎていない限り、赤いグラデーションの背景イメージをページとともにスクロールさせたい場合、イメージはdivの下端を通過しません。純粋にCSSでこれを行う方法は考えられません。 – pettazz

+0

残念ながら、background-repeatは違いはありません。 – dmnc