【发布时间】:2011-04-14 08:13:19
【问题描述】:
我从另一个问题中得到了这个 sn-p:
<script type='text/javascript' >
$(document).ready(function () {
$("div.content ul li a")
.mouseover(function () {
var t = $(this);
if (!t.hasClass("clicked")) { // very easy to check if element has a set of styles
t.addClass('mouseover');
}
})
.mouseout(function () { // attach event here instead of inside mouse over
$(this).removeClass('mouseover');
});
$("div.content ul li a").click(function () {
var t = $(this);
t.toggleClass("clicked");
if (t.hasClass("clicked")) {
t.removeClass('mouseover');
} else {
t.addClass('mouseover');
}
});
});
</script>
我想要的最后一件事是在单击另一个选项卡时恢复选项卡的正常 css。 例如,当我单击 tab1 时,选项卡的 bgcolors 是白色的,当我进入 Tab2 时,它会变为黑色。.Tab1 变为白色,Tab2 变为黑色
<ul>
<li>
<a href="#Tab1">Tab 1</a>
</li>
<li>
<a href="#Tab2">Tab 2</a>
</li>
</ul>
假设这是 CSS 部分
ul li a {background-color: white;}
ul li a.mouseover {background-color: black;}
ul li a.mouseout {background-olor: white;}
ul li a.clicked {background-color: black;}
【问题讨论】:
-
您的
.mouseover和.clicked类是相同的,但您的代码似乎可以防止它们之间的冲突(当.clicked存在时不添加.mouseover)。你打算让这些类相同吗? -
这个问题解决了吗?
-
抱歉,有段时间没上网了如果服务器大部分时间处于离线状态 xD