根据动态样式属性 - jquery 的存在来定位元素



我正在构建一个应用程序,用于检查页面中包含嵌套<img>元素的特定<div>

<div style="padding-bottom: 66.6%">
    <img src="some-src" />
</div>

每次页面刷新时,周围的div 都会有不同的padding值;无论 jquery padding值如何,我如何定位这个div?

注意 我不能使用 idclass 来定位此元素

您可以搜索在 style 属性中具有填充的div:

var $div = $('div[style*=padding-]');
console.log($div[0]);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div style="padding-bottom: 66.6%">
  <img src="some-src" />
</div>

但是,这并不能保证同一页面上没有其他div 具有填充作为内联样式。

以下代码将检查您的div 是否有<img>标签,
使用length属性(如果> 0div :has <img>标签

var len = $('div[style*=padding-bottom]:has(img)').length;
if( len > 0 )
    alert( "Your DIV has "+len+ " <img> tag" );
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div style="padding-bottom: 66.6%">
  <img src="some-src" />
</div>

最新更新