Php 在<;上设置活动类;李>;javascript不能正常工作
让javascript在我的“li”菜单项上设置一个活动类有点问题 菜单是用php构建的,如下所示Php 在<;上设置活动类;李>;javascript不能正常工作,php,javascript,Php,Javascript,让javascript在我的“li”菜单项上设置一个活动类有点问题 菜单是用php构建的,如下所示 <nav class="categoriesMenu"> <ul class="nav nav-tabs categories"> <?php $i=0; foreach($categories as $k=>$v){ $space = array(" "); $normal
<nav class="categoriesMenu">
<ul class="nav nav-tabs categories">
<?php
$i=0;
foreach($categories as $k=>$v){
$space = array(" ");
$normalizedCategory = str_replace($space, "", $k);
echo "<li id='id$normalizedCategory'>";
if($i==0){
echo "<a href='#'>$k</a>";
}else{
echo "<a href='#'>$k</a>";
}
$i++;
echo "</li>";
} ?>
</ul>
</nav>
菜单将以这种格式呈现
<div class="navigation">
<nav class="categoriesMenu">
<ul class="nav nav-tabs categories">
<li id='idManagement'>
<a href='#'>Management</a>
</li>
<li id='idReports'>
<a href='#'>Reports</a>
</li>
<li id='idUsers'>
<a href='#'>Users</a>
</li>
<li id='idAdministration'>
<a href='#'>Administration</a>
</li>
</ul>
</nav>
<nav class="subCategoriesMenu">
<ul class="nav nav-pills subCategories">
<li class='idManagement' id='idManagementRequests' title='RequestsInterface'>
<a>Requests</a>
</li>
<li class='idManagement' id='idManagementTeamActivity' title='ActivityInterface'>
<a>Team Activity</a>
</li>
</ul>
</nav>
-
-
-
-
-
请求
-
团队活动
任何帮助都将不胜感激。
谢谢你我想你想要:
var selectCategory=function(id){
var ref=id.replace(' ','');
var classSelector=ref.replace(' ','');
$("nav > ul.categories > li").removeClass("active");
$("#"+ref).addClass("active");
$('nav > ul.subCategories > li').hide();
$('nav > ul.subCategories > li.'+classSelector).show();
}
$('ul.subCategories li').click(function(){
/*if(!$(this).hasClass("active")){
window[$(this).attr('title')]();
}*/
$('nav > ul.subCategories > li').removeClass("active");
$(this).addClass("active");
});
$('nav > ul.categories > li').click(function(
var reference=$(this).attr('id');
selectCategory(reference);
});
var firstCat=$('nav > ul.subCategories > li:first').attr('class');
selectCategory(firstCat);
这把小提琴是你想要的吗
.children()。您的
元素是否真的包含其他
元素作为直接后代?(我很确定他们不能)试图弄明白你在做什么。你的菜单看起来只有一层深。那么,如果你点击li,还有哪些li儿童可以获得?你想得到他们的兄弟姐妹吗?这适用于菜单的子项“ul.subCategories”,但不适用于菜单项“ul.categories”。请参阅我的编辑和随附的小提琴。您是否试图使两个子菜单都具有活动类?如果是,请使用我拥有的代码,如果不是,请删除$('li.'+ref).addClass('active')代码>行。另外,您的窗口[$(this.attr(title)]()就我所知,code>不是有效的代码,除非它是某种插件。就像我在前面的评论中说的那样,在这种情况下,它可以突出显示菜单子项,但不能突出显示菜单项。就像在小提琴的管理和所有的菜单项应该突出显示时点击。哦。。。在这里,您所需要做的就是更改函数中的id选择器。我编辑了完整的代码。太棒了!很晚了,我很累,没有看到什么变化。谢谢
var selectCategory=function(id){
var ref=id.replace(' ','');
var classSelector=ref.replace(' ','');
$("nav > ul.categories > li").removeClass("active");
$("#"+ref).addClass("active");
$('nav > ul.subCategories > li').hide();
$('nav > ul.subCategories > li.'+classSelector).show();
}
$('ul.subCategories li').click(function(){
/*if(!$(this).hasClass("active")){
window[$(this).attr('title')]();
}*/
$('nav > ul.subCategories > li').removeClass("active");
$(this).addClass("active");
});
$('nav > ul.categories > li').click(function(
var reference=$(this).attr('id');
selectCategory(reference);
});
var firstCat=$('nav > ul.subCategories > li:first').attr('class');
selectCategory(firstCat);