我是新来的jQuery和希望用它来保持当前所选菜单项(因为它看起来在其悬停状态。)获得了jQuery做项目“中选择”
我的警报被解雇,所以功能似乎开始。当它没有被注释掉时,第一个声明,即黄色背景色的作品。但是,我似乎无法让其他人影响菜单。 “选择”类似乎不起作用。换句话说,我在菜单中选择的项目以黄色突出显示,直到页面更改,然后返回到默认颜色。我已经尝试了很多.selected类的名称组合,包括.selected。
jQuery的
<script>
$(document).ready(function() {
$('.nav ul li').click(function() {
alert("Go!");
/*$('a', this).css("background-color","yellow");*/
$('a', this).removeClass('selected');
$('a', this).addClass('selected');
});
});
</script>
HTML
<div class="nav">
<ul class="nav ul">
<li class="selected"> <a href="index.php">HOME</a> </li>
<li> <a href="about.php">ABOUT</a> </li>
<li> <a href="k-5.php">K-5 PROJECTS<strong class="caret"></strong></a></li>
<li> <a href="wishlist.php">WISH LIST</a> </li>
<li> <a href="history.php">ART HISTORY</a> </li>
<li> <a href="funlinks.php">FUN LINKS</a> </li>
<li> <a href="contact.php">CONTACT</a> </li>
</ul>
</div>
CSS
.nav ul li a:active {
background-color: #FFB01C;
}
.nav ul li a:hover {
background-color: #FFB01C;
}
.nav ul li .selected {
background-color: #FFB01C;
}
当你点击一个链接,该链接被跟随的和新的页面被加载。该样式正在应用,但是在加载新页面时会丢失样式。另外,为什么要删除这个类,然后立即用'$('a',this).removeClass('selected'); $('a',this).addClass('selected');'? – j08691 2014-10-08 15:32:17
我试图删除之前选择的项目并将其应用于当前项目。 – eric 2014-10-08 17:46:32
我明白你想要做什么,但是你的页面只会遵循正常的链接并加载一个新页面。如果您希望选择“粘贴”,则需要使用cookie存储选择内容。 – j08691 2014-10-08 18:20:00