如何选择具有特定内联样式的元素?

假设有三个元素如下

tab01
tab02
tab03

如何使用jQuery选择没有内联样式display: none的元素display: none

谢谢

您可以选择隐藏元素:hidden元素和可见元素:visible

 $('div:visible'); 

jsFiddle 。

…但是如果你特别需要没有display; none元素display; none display; none设置为内联样式,试试这个……

 $('div').filter(function() { return $(this).attr('style') == undefined || $(this).attr('style').indexOf('display: none;') == -1 }). 

jsFiddle 。

…当然,如果你依赖于此,你应该重新考虑你的问题。

我有一个类似的问题,发现这个有用的post。 上面的答案已经足够但我想在不使用indexOf方法的情况下这样做,因为它对我来说似乎不太直观。

这是我想出的和相关的垃圾箱。 我在上面留下了上面的答案代码,表明它们都有效。 希望这有助于作为替代方法。 http://jsbin.com/coroxa/1/edit?html,js,output

 $('.bottom-drawer').filter(function() { //return $(this).attr('style').indexOf('display: block;') === 0; return $(this).is("[style*='display: block']") === true; }).slideToggle(620);