2012-02-19 28 views
0

jqueryを使用して、解像度に応じて要素の背景イメージの位置を変更しようとしています。コード:CSSでjqueryは複数の背景でCSSの背景位置を変更する

var pwwidth = $(window).width(); 
var pwheight = $(window).height(); 
var bg1posx = pwwidth - $('h1.portofolio').width(); 
var bg1posy = pwheight - $('.footer').height(); 
var bg2posx = $('.leftporto').width() - (pwwidth * 0.05); 
var bg2posy = ($('h1.portofolio').height()/2) + $('h1.portofolio').css('margin-top').replace('px', ''); 
$('#content4').css('background-position', bg1posx+'px' bg1posy+'px', bg2posx+'px' bg2posy+'px'); 

あなたはこのような要素の複数の背景を変更します。

background-position: 100px 200px , 300px 400px; 
background-position: 10% 20% , 30% 40%; 

これは

$('#content4').css('background-position', bg1posx+'px' bg1posy+'px', bg2posx+'px' bg2posy+'px'); 

答えて

0

にあなたが動作しませんように私はjQueryを使って変更するには、それを定義することはできませんあなたのコードに構文エラー(文字列の不適切な連結)を持っている:

悪い:

$('#content4').css('background-position', bg1posx+'px' bg1posy+'px', bg2posx+'px' bg2posy+'px');

グッド:

$('#content4').css('background-position', bg1posx+'px '+bg1posy+'px, '+bg2posx+'px '+bg2posy+'px');​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​

+0

を取ると、それは私のために別のエラーが作成されます。 window.resizeとdocument.readyで呼び出される関数が定義されていないことを示します。エラーを修正した行をコメントアウトするとすぐに消えます。何らかの理由? – Chris

+0

あなたは完全なJSとHTMLコードも投稿できますか?助けがはるかに簡単です。 – papaiatis

+0

私は答えとして自分のコードを掲示すべきですか、それとも動作を停止してもすべてをオンラインにする必要がありますか? – Chris

0
$("#your_div_id").css("background-position","-100px 0px, 0px 5px"); 

この第一の背景(左側100pxに) と(上から5pxの)第二1

を移動します

私はこの手法を使用してビルドしていますスライダカウントダウン は、私はこれを試し見http://jsfiddle.net/UR5jC/