我有一个页面,其中包含多个具有相同类名的元素。
其中一些正在重新定位,当我提交页面时,我想隐藏位于顶部的元素:0;
我一直在寻找一些建议,我尝试过这样的事情:
$('.myClass').not($('.myClass').css('top', '0')).fadeOut(300);
但显然这不起作用: - )
其他人对如何实现这个目标有所了解吗?
谢谢
答案 0 :(得分:5)
您正在设置元素的顶部位置,而不是过滤集合。
您想使用filter()
$( '.myClass' )
.filter(function() {
return $(this).css('top') === "0px";
}).fadeOut(300);
答案 1 :(得分:0)
没有选择器,但这可以通过循环元素并检查顶部position来实现。
像这样。
$.each($('.myClass'), function(i, el) {
var position = $(el).position();
if (position.top === 0) {
$(el).hide();
}
});
答案 2 :(得分:0)
使用类循环遍历每个元素,然后检查其css属性:
$('.myClass').each(function(){
if($(this).css('top')==='0'){
$(this).fadeOut(300);
}
});