2013-01-23 73 views
0

我試圖讓這個腳本工作,但不幸的是沒有任何事...... 我也認爲有更好的方法來做到這一點,但不知道哪個?php腳本如果頁面打開時更改按鈕類

所以我希望在一個打開的頁面上按鈕保持懸停狀態,所以我創建了一個類似於按鈕懸停的類,並表示如果當前頁面名稱對應於「此按鈕「鏈接。

$currentpath = basename(__FILE__); 

在每個頁面上設置好的之前,包括我的header.php

謝謝!

PHP和HTML:

<?h 
$o = "/ita/o.h"; 
$ = "/ita/.h"; 
$a = "/ita/a.h"; 
$s = "/ita/s.h"; 
$st = "/ita/st.h"; 
$p = "/ita/p"; 
$t = "/ita/t"; 
$c = "/ita/c"; 
?> 

<div id="button"> 
    <ul> 
    <li><a href=<?=$o?> class="<?php if($currentpath == basename($o)){echo("buttonon");} ?>">o</a></li> 
    <li><a href=<?=$p?> class="<?php if($currentpath == basename($p)){echo("buttonon");} ?>">p</a></li> 
    <li><a href=<?=$a?> class="<?php if($currentpath == basename($a)){echo("buttonon");} ?>">a</a></li> 
    <li><a href=<?=$s?> class="<?php if($currentpath == basename($s)){echo("buttonon");} ?>">s</a></li> 
    <li><a href=<?=$st?> class="<?php if($currentpath == basename($st)){echo("buttonon");} ?>">st</a></li> 
    <li><a href=<?=$p?> class="<?php if($currentpath == basename($p)){echo("buttonon");} ?>">p</a></li> 
    <li><a href=<?=$t?> class="<?php if($currentpath == basename($t)){echo("buttonon");} ?>">t</a></li> 
    <li><a href=<?=$c?> class="<?php if($currentpath == basename($c)){echo("buttonon");} ?>">c</a></li> 
    </ul> 
</div> 

的CSS:

#button ul { 
     margin: 0; 
     padding: 0; 
     list-style-type: none; 
     text-align: center; 
     background-color: #F00; 
} 
#button ul li { 
     display: inline; 
} 
#button ul li a { 
     display:inline-block; 
     color:#FFF; 
     font-family:Calibri; 
     font-size:18px; 
     font-weight:bold; 
     padding:4px 15px 4px 15px; 
     text-decoration:none; 
     font-variant:small-caps; 
} 
#button ul li a:hover { 
     background-color:#F00; 
     color:#02346F; 
     padding:4px 15px 4px 15px; 
     font-size:18px; 
     font-weight:bolder; 
} 

.buttonon { 
     background-color:#F00; 
     display:inline-block; 
     font-family:Calibri; 
     font-size:18px; 
     font-weight:bold; 
     text-decoration:none; 
     font-variant:small-caps; 
     color:#02346F; 
     padding:4px 15px 4px 15px; 
     font-size:18px; 
     font-weight:bolder; 
} 

編輯:我添加了$ currentpath的定義。

+1

你忘了告訴我們具體的問題。 – PeeHaa

+0

您的代碼中未定義'$ currentpath'。 – Mahn

+0

什麼是'$ currentpath' – Adrian

回答

0

假設$currentpath在你的代碼的其他地方定義:

使用基本名()將無法工作,因爲你有子目錄,並基本名稱()不返回子目錄。

,你可以搜索字符串:

<?php if(strpos($currentpath, $prezzi) !== false){echo("buttonselected");} ?> 
+0

對不起,這是標題。在放置header.php之前,我在文件中定義了$ currentpath。 我設置了 $ currentpath = basename(__ FILE__); (與__(它不會發布) 這是返回文件名 basename($ prezzi和其他人)也返回文件名。 – Perocat

相關問題