我正在使用php,css和jquery在一个网站上工作,以显示基于日间菜单的信息。
我使用 li 构建了一个菜单来表示周一到周五的日子。
我尝试使用以下Jquery代码添加一个类,没有任何运气,当我点击时使我的按钮处于活动状态。
$(document).ready(function() {
$(".dias li").click(function() {
$(this).addClass("actidia");
$(this).siblings().removeClass("actidia");
return false;
});
});
.dias {
list-style: none;
width: 440px;
margin-top: 10px;
margin-bottom: 5px;
margin-left: auto;
margin-right: auto;
}
.dias>li {
float: left;
width: auto;
height: 28px;
line-height: 28px;
margin-right: 15px;
padding: 1px 12px 1px 12px;
font-family: Raleway;
font-size: 15px;
border: 1px solid #F90;
background-color: #F90;
-webkit-border-radius: 8px;
-moz-border-radius: 8px;
border-radius: 8px;
}
.dias>li:hover {
background-color: rgba(255, 204, 0, 0.2);
border-top: 1px solid #F60;
border-bottom: 1px solid #F60;
}
.dias>li a {
color: #111;
font-family: Raleway;
font-size: 13px;
font-weight: 400;
}
.dias>li a:hover {
color: #444;
font-family: Raleway;
font-weight: 400;
text-decoration: none;
}
.dias .actidia {
color: #555;
font-size: 13px;
font-family: Raleway;
font-weight: 400;
background-color: rgba(255, 204, 0, 0.2);
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul class="dias">
<li><a href="menudia_user.php?dia=<?php echo $lunes ?>">Lunes</a></li>
<li><a href="menudia_user.php?dia=<?php echo $martes ?>">Martes</a></li>
<li><a href="menudia_user.php?dia=<?php echo $miercoles ?>">Miercoles</a></li>
<li><a href="menudia_user.php?dia=<?php echo $jueves ?>">Jueves</a></li>
<li><a href="menudia_user.php?dia=<?php echo $viernes ?>">Viernes</a></li>
</ul>
问题是我必须使用 return false 来添加一个类,并在点击时激活我的按钮,但每当我使用它时,我的链接都不起作用。如果我拿出 return false ,我的链接可以正常工作,但该类未应用。我的按钮只是闪烁。
我花了很多时间搜索并试图找到一个没有运气的解决方案。
我将非常感谢您对此事的任何帮助。
答案 0 :(得分:0)
点击链接页面后会刷新。所以它不会应用你的jquery逻辑。你可以用PHP逻辑来做到这一点。
您需要另一个变量来存储$_GET
param。所以在php代码中声明下面的变量:
$dia = isset($_GET['dia']) ?$_GET['dia']:'';
要应用有效课程,请使用$dia
变量检查href
。如果两者相等则应用活动类。使用下面的代码&amp;为其他李做这件事
<li class="<?php echo $dia==$lunes?'actidia':''; ?>"><a href="menudia_user.php?dia=<?php echo $lunes; ?>">Lunes</a></li>