1

php url を使用して現在のナビゲーション タブを強調表示する (.php 拡張子を使用する場合と使用しない場合)

 //php code
function curPageName() {
return substr($_SERVER["SCRIPT_NAME"],strrpos($_SERVER["SCRIPT_NAME"],"/")+1);
}
$Current=curPageName();;
?> 

//HTML,CSS

<li id=<?php if ("index.php"==$Current) echo "selected";else echo "";?>>
4

2 に答える 2

1

代わりに、次のようなものを使用して、現在のページをナビゲーション バーのアクティブなメニューとして取得します。

  • $page = "page_name"たとえば、あなたのページにhome page入れてください。$page = "home"
  • ナビゲーション バーの HTML が存在する共通ファイルでは、次のようになります。

<li <?php echo ($page == 'home') ? "class='active'" : ""; ?> title="Home Page"><a href="<?php echo BASE_URL; ?>">Home</a></li>
<li <?php echo ($page == 'article') ? "class='active'" : ""; ?> title="Recent articles"><a href="<?php echo BASE_URL; ?>/articles">Articles</a></li>
...
...

  • activeCSS を使用して目的の効果を実現するスタイルクラス。
于 2012-05-24T05:08:57.260 に答える
1

それが役に立てば幸い

<?php

    function curPageName() {
    return substr($_SERVER["SCRIPT_NAME"],strrpos($_SERVER["SCRIPT_NAME"],"/")+1);
    }
    $Current=curPageName();

   $nav_tabs=array('home','about','products','contacts');

   foreach($nav_tabs as $nav)
   {
          if($nav == $current)
         {
             echo"<li class='active' > <a href='$nav' > $nav </a></li>";
         }
         else
        {
             echo"<li  > <a href='$nav' > $nav </a></li>";
        }
   }
?>

// CSS でアクティブを定義してタブを強調表示します

.active{
background-color:black;
font-white;
}
于 2012-05-24T05:32:18.037 に答える