jQuery检查div是否具有内联样式

问题描述 投票:-1回答:3

我想检查div#content是否具有内联样式,如果是,则查找具有属性id的父div,并添加一个类。这是我的布局!

<div id="one">
  <h3>title</h3>
  <div class="content"></div>
</div>
<div id="two">
  <h3>title</h3>
  <div class="content" style="display:block"></div>
</div>
 <div id="three">
  <h3>title</h3>
  <div class="content"></div>
</div>

在这种情况下,我试图找到div#2并在那里添加一个类,但找出attribut id

谢谢,

jquery css
3个回答
1
投票

您可以使用 - 检查css无济于事,您需要检查.attr(“style”)以检查元素中是否提到了内联样式属性。

$('.content').each(function() {
    var $this = $(this);
  if($this.attr('style')){
    console.log($(this).attr('style'));
    $this.parent().addClass("class-new");
  }
});

小提琴here


0
投票

使用each循环'.content' DOM并检查display=inline然后addClass().parent()

$('.content').each(function() {
if($(this).css('display') == 'inline')
{
  $(this).parent().addClass("classAdd");
}
});
.content{
display:inline;
}
.classAdd{
background:red;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="one">
  <h3>title</h3>
  <div class="content"></div>
</div>
<div id="two">
  <h3>title</h3>
  <div class="content" style="display:block"></div>
</div>
 <div id="three">
  <h3>title</h3>
  <div class="content"></div>
</div>

0
投票

试试这个...

$('.content').each(function() {
  if($(this).is('[style]'))
  {
    $(this).parent().addClass("classNew");
  }
});
.classNew{
background:red;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="one">
  <h3>title</h3>
  <div class="content"></div>
</div>
<div id="two">
  <h3>title</h3>
  <div class="content" style="display:block"></div>
</div>
 <div id="three">
  <h3>title</h3>
  <div class="content"></div>
</div>
© www.soinside.com 2019 - 2024. All rights reserved.