Javascript 尝试查看元素在样式标记中是否具有特定的CSS属性

Javascript 尝试查看元素在样式标记中是否具有特定的CSS属性,javascript,jquery,css,Javascript,Jquery,Css,我正在尝试做一些类似的事情: var $list = new Array(); $selector.each(function(){ if ( $(this).has(css("position")) ){ $list.push($(this)); } }); 我当时的做法似乎并不奏效。我看到了一个类似的例子: var bg = ('element').parents().filter(function() { return $(this).css('background'

我正在尝试做一些类似的事情:

var $list = new Array();
$selector.each(function(){
  if ( $(this).has(css("position")) ){
    $list.push($(this));
  }
});
我当时的做法似乎并不奏效。我看到了一个类似的例子:

var bg = ('element').parents().filter(function() {
  return $(this).css('background').length > 0;
}).eq(0)

但是我不确定我是否应该这样做,或者是否有其他的方法来做。

你很接近。。。但是试试这个

var $list = new Array();
$selector.each(function(){
  if ( $(this).css("position") ){
    $list.push($(this));
  }
});
更好的方法是检测位置类型,即:

var $list = new Array();
$selector.each(function(){
  if ( $(this).css("position") == "absolute" ){
    $list.push($(this));
  }
});
编辑

根据上面的评论,您可能需要检查除左上方特定位置之外的其他内容,因为默认情况下这些内容将显示为0px,因此可能需要检查值而不是实际属性


您还可以使用
$(this.offset().left
$(this.position().left
作为该..

的特定属性?有很多属性具有不同的值集,如背景图像、渐变、变换、定位和大小,它们的度量标准不同,如px、pt、em。我试图检查css、左侧和底部的位置。如果不是相对的,或者“位置”的其他有效选项之一,请参见我的编辑。您最好使用position()或offset()与CSS属性来检查position的值。当然可以,不过我可能会在接下来的几分钟内发布一个类似但不同的问题。似乎有什么我试图做的,这只是一个拼图的一部分。