電子書籍の厳選無料作品が豊富!

以前から質問させていただいているのですが、よくわからないので
ここでまとめて質問させていただきます。
質問の方法が悪かったせいもあり、マルチポストに近くなってしまうのですが、ご容赦下さい。
以前の質問↓
http://okwave.jp/qa4624047.html

CSSのナビゲーションバーで現在の表示ページをハイライトしたいと思います。できるか否かわからないのですが、できないのであれば
どのように通常はしているのかを教えてください。

ただ、ssiで全ページ共通のナビゲーションバーを使用していますのでカテゴリごとにナビゲーションメニューをつくらないといけないのか
また、カテゴリーを判別して(ディレクトリで)ハイライトしてくれるajaxのようなものがあるのか。
よくわからないのです・・・

http://www.n-di.co.jp/service/analytics.html

ここのナビゲーションのようなものがつくりたいです。

わからないことばっかりで申し訳ないのですが
お力を貸していただけるとありがたいです。

A 回答 (3件)

>topで呼び出すというのは、どこで呼び出せばよいのでしょうか?


>topと指定のあるリンクをクリックした時の状態のことでしょうか?

以下の記述をHTML(拡張子は.phpにします)の中に書き込んでおけば、ページが読み込まれたときに自動的に読み込まれます。
<?PHP
$navi = top;
include("navi.php")
?>

呼び出しを行っているのは「include("navi.php")」の部分です。
その前の行の「$navi = top」で、ハイライト位置を指定しています。

リンクのページでは、
<?PHP
$navi = link;
include("navi.php")
?>
とします。(2行目ので"link"としています)


こうすると、「include("navi.php")」の結果は
$navi = top のときは
<SPAN class="NaviC just"><A href="./">トップ</A></SPAN>
<SPAN class="Navi just"><A href="link.php">リンク</A></SPAN>
になり、
$navi = link のときは
<SPAN class="Navi just"><A href="./">トップ</A></SPAN>
<SPAN class="NaviC just"><A href="link.php">リンク</A>
になります。
Navi と NaviC の位置を見てください。


以下同じように、ページごとに「$navi = ○○」の値を変えます。
例えばinfomation.phpを追加するには、
infomation.phpは
<?PHP
$navi = info;
include("navi.php")
?>
としておいて、
navi.phpに、
if($navi=="info"){print"<SPAN class=\"NaviC just\">";}else{print"<SPAN class=\"Navi just\">";} print"<A href=\"infomation.php\">お知らせ</A></SPAN>";
を追加します。
こうすると、infomatin.phpが開かれたときは、「お知らせ」がハイライトされます。

この回答への補足

なるほど!
なんとなくですが、わかりました!

丁寧なご説明、ありがとうございました。

一度、挑戦してみます!!

補足日時:2009/03/03 12:03
    • good
    • 0

はじめまして




>CSSのナビゲーションバーで現在の表示ページをハイライトしたいと思います。
>ただ、ssiで全ページ共通のナビゲーションバーを使用していますので
SSIは使ったことがないので分かりませんが、PHPを使って同じようなことをやったことがあります。
同じ考え方でできればいいのですが。

PHPの場合には、外部のPHPを自分のPHPの中に呼び出すことができます。
このときに変数を送ることもできます。
具体的には、メインの文書から$naviの値を指定して、navi.phpを呼び出します。
<?PHP
$navi = top;
include("navi.php")
?>

navi.phpの方で
if($navi=="top"){print"<SPAN class=\"NaviC just\">";}else{print"<SPAN class=\"Navi just\">";} print"<A href=\"./\">トップ</A></SPAN>";
if($navi=="link"){print"<SPAN class=\"NaviC just\">";}else{print"<SPAN class=\"Navi just\">";} print"<A href=\"link.php\">リンク</A></SPAN>";
としておけば、
$navi = top;で呼び出されたときには、「トップ」がハイライトされ、
$navi = link;で呼び出されたときには、「リンク」がハイライトされます。

…Navi と NaviCの書式は、HTMLと同様CSSで指定しておきます。

この回答への補足

phpは知識がありませんのでよくわからないのですが、
topで呼び出すというのは、どこで呼び出せばよいのでしょうか?
topと指定のあるリンクをクリックした時の状態のことでしょうか?

phpの方がかんたんにできそうであれば、挑戦してみたいと思います。

補足日時:2009/03/03 09:04
    • good
    • 0

ちょっといじる必要はありそうですが。


http://semooh.jp/jquery/ref/cont/hilite_current_ …
    • good
    • 0
この回答へのお礼

なるほど!これならできそうですね☆
一度挑戦してみます!

ありがとうございました!

お礼日時:2009/03/03 09:04

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!