我有很多元素在我的页面上有.photo
类。有没有办法过滤jQuery中没有触发事件的匹配元素?
我选择它们是这样的:
$('#photos-container .photo').hover ...
有没有办法过滤掉不火的悬停事件的要素是什么?
我有很多元素在我的页面上有.photo
类。有没有办法过滤jQuery中没有触发事件的匹配元素?
我选择它们是这样的:
$('#photos-container .photo').hover ...
有没有办法过滤掉不火的悬停事件的要素是什么?
什么
$('#photos-container .photo').hover(function(e) {
var elementsThatDidntFire = $('#photos-container .photo').not(this);
}
我结束了这个 – Slick23 2011-12-20 16:00:35
$('#photos-container .photo').hover(function(e) {
var elementsThatDidntFire = $('#photos-container .photo').filter(function() {
return this !== e.target;
});
}, function() {
});
使用.not
过滤:
$('#photos-container .photo').hover(function() {
$('#photos-container .photo').not(this).addClass('hover');
}, function() {
$('#photos-container .photo').not(this).removeClass('hover');
});
与DaDaDom的答案类似,但它会缓存元素,因此不会在每个事件中重新选择。
var photos = $('#photos-container .photo').hover(function(e) {
var elementsThatDidntFire = photos.not(this);
});
你的意思是“目前没有徘徊的元素”?我不明白当事件*没有被解雇时你怎么可以用元素做些什么...... – lonesomeday 2011-12-20 15:33:30
这就是我的意思。 – Slick23 2011-12-20 15:34:14
那么你想怎么做呢? – lonesomeday 2011-12-20 15:36:05