jquery检查属性元素值

Dev*_*per 12 html javascript jquery

<li style="padding-bottom: 0px; display: none;">
<span> Content </span>
</li>
Run Code Online (Sandbox Code Playgroud)

我想检查一下 display == none

我用下面的脚本得到了解决方案.

if($(this).closest('li').attr('style') =='padding-bottom: 0px; display: none;'){
    // script
}
Run Code Online (Sandbox Code Playgroud)

任何其他简单的写作方式.谢谢

Ror*_*san 8

你遇到的问题是你在这里混合使用jQuery和vanilla JS方法.attr().display.您还尝试将整个style字符串与(如果有效)一个CSS规则进行比较.

实现这一目标的更好方法是使用jQuery的is()方法以及:visible选择器.试试这个:

if ($(this).closest('li').is(':visible')) {
  // script
}
Run Code Online (Sandbox Code Playgroud)