如何使用 php 和 HTML 更改活动链接的类名
Posted
技术标签:
【中文标题】如何使用 php 和 HTML 更改活动链接的类名【英文标题】:How to change class name for active link using php and HTML 【发布时间】:2019-09-26 01:48:58 【问题描述】:我创建了一个带有导航菜单的网站。该网页是在 CodeIgniter 中创建的。我想将活动页面链接的颜色更改为另一个。
我已经在页眉上尝试了一些 JS。首先,我尝试了多个无序列表。那行不通,现在我只保留导航菜单元素的无序列表。
<script type="text/javascript">
$(document).ready(function()
$('#mainav ul li').click(function()
console.log('find');
$(this).addClass("active");
);
);
</script>
这里mainav是header中<nav>
的id
php 文件
<nav id="mainav" class="fl_right">
<ul class="clear" id="navs">
<?php if(!$this->session->userdata('logged_in') || $this->session->userdata('verify')) :?>
<li class="active"><a href="<?php echo base_url();?>" class="nav-link">Home</a></li>
<?php endif ;?>
<?php if( $this->session->userdata('verify')):?>
<li ><a class="nav-link" href="<?php echo base_url();?>details/<?php echo $this->session->userdata('patient_id');?>" >Details</a></li>
<li ><a class="nav-link" href="<?php echo base_url();?>history/<?php echo $this->session->userdata('patient_id');?>">Consulting History</a></li>
<?php endif ;?>
<?php if( !$this->session->userdata('verify') && !$this->session->userdata('logged_in')):?>
<li ><a class="nav-link" href="<?php echo base_url();?>register">Register</a></li>
<li ><a class="nav-link" href="<?php echo base_url();?>print">Patient Login</a></li>
<li ><a class="nav-link" href="<?php echo base_url();?>login">Login</a></li>
<?php endif ;?>
<?php if( $this->session->userdata('logged_in')):?>
<li ><a href="<?php echo base_url();?>doctor" class="active">Home</a></li>
<li ><a class="nav-link" href="<?php echo base_url();?>list">List</a></li>
<li ><a class="nav-link" href="<?php echo base_url();?>list">Medicine</a></li>
<li ><a class="nav-link" href="<?php echo base_url();?>search">Patient</a></li>
<li ><a class="nav-link" href="<?php echo base_url();?>logout">Logout</a></li>
<?php endif ;?>
<?php if( $this->session->userdata('verify')):?>
<li class="active"><a class="nav-link" href="<?php echo base_url();?>logout">Logout</a></li><?php endif;?>
</ul>
</nav>
我需要确定哪个页面现在处于活动状态。也就是改变活动链接的颜色。
【问题讨论】:
【参考方案1】:试试这样的:
<a class="<?php if($this->uri->segment(1)=="search")echo "active";?>"
说明:
会得到如下的url片段:abc.com/search
这里的search
是segment(1)
,所以如果segment(1)
的值等于硬编码的"search"
,那么它将添加活动类。
【讨论】:
以上是关于如何使用 php 和 HTML 更改活动链接的类名的主要内容,如果未能解决你的问题,请参考以下文章