0

まず、私の英語でごめんなさい、私はフランス人なので..

これが私の問題です。アクティブなアイテムの class="selected" を持つメニューがあります。そして、このクラスのカスタム css があります。これは機能するので、これで問題ありません。でも、ページごとに別のボディの背景が欲しいです。たとえば、ページ 1 はグレー、ページ 2 は黒などにする必要があります。

しかし、すべてのページを同じ index.php ファイルにロードするため、ボディにクラスを追加できません (そして、css で背景を変更します)。

少しのJavaScriptで問題を解決できると思いましたか?「選択された」クラスを持つアイテムを取得し、カスタムボディの背景を適用します

ありがとう

4

2 に答える 2

2

それを行うには、他にもさまざまな方法があります。ここに1つのアイデアがあります。

Jquery の $(document).get ready を使用してページを読み込むと、選択したメニューを取得できます。ここまでが大体の目安です。

<ul>
<li bodybgcolor="red" class="selected"></li>
<li bodybgcolor="green"></li>
<li bodybgcolor="yell"></li>
<ul>

 $(document).ready(function() { 
 bodybgcolor =   $(.selected).attr("bodybgcolor");
 $("body").css('background-color', 'blue');
 }

class=selected とその bodybgcolor 属性を取得して、ボディの色を設定できます。

サーバー側から: メニューを動的に生成し、選択したクラスにフラグを立てる場合、その時点で $bodybgcolor でボディの背景色を定義し、ボディの色またはスタイリングで同じものを使用できます。

<body background=""=<?php  echo $bodybgcolor; ?>>

ありがとう

于 2012-07-05T09:46:09.317 に答える
0

jqueryでこれを試してください:

$("#id_of_what_you_want_to_change).css({background: url("image.jpg")});

のすべてのページ:

ページの読み込み時にこれを行います。背景に一連の画像があり、それぞれに対応するページの名前があると仮定します。

 jQuery(function($){
var title = $(this).attr('title');

        loadbackground(title);      
    });
function loadbackground(title)
{
$("body").css({background: url(title+".jpg")});
}
于 2012-07-05T09:57:22.580 に答える