有沒有一種方法與jQuery知道你剛剛沒有使用id的滾動出哪個div?用jquery識別沒有使用id的histed元素?
基本上我有類似以下情形:
如果用戶將鼠標懸停在它變成了紅色覈實。 如果用戶將鼠標懸停在另一個div上,則所有div都變爲白色(基本上重置所有內容),並且當前在div上懸停的圖標變爲紅色。 但是,如果用戶翻轉一個div將它變成紅色,然後又回到同一個div中,我不希望它回到白色,然後再變成紅色。
有沒有一種方法與jQuery知道你剛剛沒有使用id的滾動出哪個div?用jquery識別沒有使用id的histed元素?
基本上我有類似以下情形:
如果用戶將鼠標懸停在它變成了紅色覈實。 如果用戶將鼠標懸停在另一個div上,則所有div都變爲白色(基本上重置所有內容),並且當前在div上懸停的圖標變爲紅色。 但是,如果用戶翻轉一個div將它變成紅色,然後又回到同一個div中,我不希望它回到白色,然後再變成紅色。
這裏是另一種解決方案:http://jsfiddle.net/adeneo/ep39L/1/
var last;
$('div').mouseenter(function(e) {
var elm = $(e.target);
if (last != elm) {
$('div').css('background', 'white');
elm.css('background', 'red');
}
last=elm;
$('div').eq(2).html(last.index()+1);
});
我喜歡這個,乾杯:) – 2012-01-04 14:27:21
徘徊時,給它一個臨時類:
$(this).addClass();
然後,當你準備刪除它使用:
$(this).removeClass();
添加類,當你將鼠標放置,然後檢查該類當鼠標懸停再次存在時。如果它沒有清除所有div的課程。如果你不想使用類,你可以使用.data和.removeData:
$('div').on('mouseover', function() {
if (!$(this).hasClass('red')) {
$('div').removeClass('red');
}
$(this).addClass('red');
});
downvote的任何特定原因? – 2012-01-04 16:04:04
使用非:
HTML:
<div>
<span>1</span>
<span>2</span>
<span>3</span>
</div>
JS:
$("div span").click(function(){
$(this).closest("div").find("span").not(this).css("background", "#fff");
$(this).css("background", "#f00");
});
你能[小提琴](http://jsfiddle.net/)嗎?將使它更容易幫助。 – 2012-01-04 13:40:13
它不是我想要添加刪除的類。也許我舉了一個壞榜樣。基本上一個盒子包含三個可以顯示或隱藏的盒子。當鼠標進入一個不是它所離開的盒子時,我想將所有盒子重置爲原始狀態。如果它重新進入它離開的盒子,它應該保持在相同的狀態。 – 2012-01-04 13:45:46
就像@ShadowWizard所說,在jsfiddle中編碼 – Alex 2012-01-04 13:46:54