2011-10-26 15 views
0

私はこれを良い時間に把握しようとしています。私は、$ the_pathという変数に基づいてjQueryで背景を設定しようとしています。変数がjQuery内で評価されていないCSS文

現在、バックグラウンドは$ the_pathの実際の値ではなく、 "$ the_path"に設定されています。この声明を適切に評価するにはどうすればよいですか?

$('body').css({'background' : 'url($the_path)','backgroundPosition' : 'center 50px'}); 

多くのありがとうございます!

+0

$意味the_path?それは本当ですか? – chhameed

+0

$ the_path = 'images/image1.jpg'; – coryetzkorn

+0

イメージとの相対パスは常に同じです。 – coryetzkorn

答えて

1

引用符で囲むと、そのまま扱われます。変数として評価されるようにするには、引用符で区切り、代わりに+を使用して結合します。

$('body').css({'background' : "url('" + the_path + "')",'backgroundPosition' : 'center 50px'}); 

編集:$the_pathを推定のJavaScript変数です。それはPHPの変数の場合は、代わりにこれをしたい:

$('body').css({'background' : "url('<?=$the_path?>')",'backgroundPosition' : 'center 50px'}); 
+0

まだやっていないようですね。これはjavascript変数です。おそらくjQueryを.css()内のすべてのものとあまりにも混同していますか? – coryetzkorn

+0

PHPからの$ the_pathはありますか? JS文字列変数は通常$で始まらないので、あなたが意味することは少し混乱します。私の例の両方を試したことがありますか?また、CSSの 'background'を 'background-image'に変更してみてください。 – mikel

+0

キャッシュされたjQueryオブジェクトには変数$を使用しますが、他の変数には使用しません。 –

0

'background' : 'url('+$the_path+')'が必要です。

0
var path = 'url(' + <? $the_path ?> + ')'; 
$('body').css({'background' : path, 'backgroundPosition' : 'center 50px'}); 
関連する問題