您應該從所有,目前有它的元素將其添加到新的元素之前刪除類:
$("li").live("mouseover", function() {
$('.current').removeClass('current');
$(this).addClass('current');
});
jsFiddle
爲了增加優化(即保存$('.current')
選擇,這在某些情況下可能是昂貴的舊的瀏覽器),你可以檢查,看看是否該元素徘徊已經有類:
$("li").live("mouseover", function() {
if (!$(this).hasClass('current')) {
$('.current').removeClass('current');
$(this).addClass('current');
}
});
或者,每Felix的好主意,
var current;
$("li").live("mouseover", function() {
if (this !== current) {
$(current).removeClass('current');
$(this).addClass('current');
current = this;
}
});
jsFiddle
我添加了代碼....它不是太多張貼;) – 2011-06-01 20:29:27