我尝试在活动页面中添加活动类。 我创建了两个文件。第一个文件名是csr和csr-policy,但是第一个单词是相同的,那样同时显示两个页面。
<ul>
<li><a href="csr.php" <? if(strpos($_SERVER['PHP_SELF'], 'csr')) {?> class="active" <? }?>>CSR</a></li>
<li><a href="csr-policy.php" <? if(strpos($_SERVER['PHP_SELF'], 'csr-policy')) {?> class="active" <? }?>>CSR Policy</a></li>
</ul>
答案 0 :(得分:2)
我认为这是最简单的方法。 在HTML中添加要添加类的代码: 例如:
<li class="<?php if ($add_class=="") {echo "active"; }?>"><a href="#">Home</a></li>
这是PHP脚本:
<?php
$directoryURI = $_SERVER['REQUEST_URI'];
$path = parse_url($directoryURI, PHP_URL_PATH);
$components = explode('/', $path);
$add_class = $components[1];
?>
答案 1 :(得分:1)
<ul>
<li><a href="csr.php" <?php if(basename($_SERVER['PHP_SELF'])=="csr.php") {?> class="active" <?php }?>>CSR</a></li>
<li><a href="csr-policy.php" <?php if(basename($_SERVER['PHP_SELF'])=="csr-policy.php") {?> class="active" <?php }?>>CSR Policy</a></li>
</ul>
这可能会有所帮助!
答案 2 :(得分:0)
你可以用扩展名检查它:
<li><a href="csr.php" <? if(strpos($_SERVER['PHP_SELF'], 'csr.php')) {?> class="active" <? }?>>CSR</a></li>
<li><a href="csr-policy.php" <? if(strpos($_SERVER['PHP_SELF'], 'csr-policy.php')) {?> class="active" <? }?>>CSR Policy</a></li>
</ul>
另请注意strpos()
可能会返回0,这不等于false。所以你必须检查严格的相等strpos() !== false
(在这种情况下似乎没有用,但总是很有用)。
答案 3 :(得分:0)
试试这个。
<ul>
<li><a href="csr.php" <?php if(strpos($_SERVER['PHP_SELF'], 'csr') !== false) {?> class="active" <?php }?>>CSR</a></li>
<li><a href="csr-policy.php" <?php if(strpos($_SERVER['PHP_SELF'], 'csr-policy') !== false) {?> class="active" <?php }?>>CSR Policy</a></li>
</ul>