2012-01-04 6 views
1

jQueryアニメーションを設定して、サイトのヘッダーにあるdivの背景イメージを変更しました。コンテンツに影響を与えるJQueryのアニメーション化された背景

イメージはコンテナよりも大きく、アニメーション化するとアニメーションの間、その要素が一時的に隠されます。

私はおそらく明らかに何かを見逃してしまった、誰でも助けることができますか?

jQueryの下、ここでは例:

(例は今除去が、別のdivとDIVの背景画像をアニメーションにより複製することができる(背景)上部に浮い)

var currentBackground = 1; 

function changeHeader() { 
currentBackground++; 
    if (currentBackground>6) currentBackground = 1; 

     jQuery('.slider').fadeOut(1000,function() { 
      jQuery('.slider').css('background', 'url(\'/myurl/images/sliders/home- slide'+currentBackground+'.jpg\') no-repeat center'); 
      jQuery('.slider').fadeIn(1000); 
    }); 

    setTimeout(changeHeader,10000); 
} 


jQuery(document).ready(function($){ 
    setTimeout(changeHeader,10000); 
}) 
+0

あなたはshouldn't 'setTimeout()'を関数自体の内部ではなく2回呼び出します。 – Stefan

+0

私はおそらく誰かが助けることができる何かを明らかに欠場したとはどういう意味ですか?このアニメーションがあなたが直面している問題について、どうやって知ることができますか。説明してください。 – Murtaza

+0

ステファンありがとうございました。今はすべてソートされています。私の6時間制限が上がったときに投稿します! –

答えて

0

私は少し違った考え方をしてくれたので、コードのためにAramとStefanに感謝しました。

トリックが(ちょうどCSSクラスに適用されたときに、動作するようには思えません)以下のようにjQueryの文で、他のページ要素より低いZ-インデックスを設定することです:

var currentBackground = 1; 

function changeHeader() { 
    currentBackground++; 

    if (currentBackground>6) currentBackground = 1; 

    jQuery('.slider').fadeOut(1000,function() { 
     jQuery('.slider').css({'background-image': 'url(\'/myurl/images/sliders/home- slide'+currentBackground+'.jpg\')', 
           'background-repeat': 'no-repeat', 
           'background-position': 'center', 
           'z-index': '-1'}); 
     jQuery('.slider').fadeIn(1000); 
    }); 

    setTimeout(changeHeader,10000); 
} 


jQuery(document).ready(function($){ 
    setTimeout(changeHeader,10000); 
}) 
0

このような気にいらは、あなたがbackground-imageサイズ

if (currentBackground>6) currentBackground = 1; 

     jQuery('.slider').fadeOut(1000,function() { 
      jQuery('.slider').css({'background-image': 'url(\'/myurl/images/sliders/home- slide'+currentBackground+'.jpg\')', 
            'background-repeat': 'no-repeat', 
            'background-position': 'center', 
            'background-size': '100px 100px'}); 
      jQuery('.slider').fadeIn(1000); 
    }); 
+0

あなたのお手伝いをしてくれてありがとう、アラム、バックグラウンドサイズは画像のアスペクト比に問題をもたらしましたが、私はJQuery CSSステートメントでZ-インデックスを強制するとそれを修正することが分かりました。フェード)... –

0

$.fadeOut()opacityを使用し、それが影響を与えることができますあなたのメニュー#navは、スライダーの上にあります#slider_1

関連する問題