2016-01-29 102 views
0

的当我使用$(audio).prev().html();,它记录:获取CSS样式相关的元素

<div class="col-md-8" style="background: #DDDDDD"></div> 

然而,当我试图让CSS属性使用:

$(audio).prev().css("background")

它日志rgba(0, 0, 0, 0) none repeat scroll 0% 0%/auto padding-box border-box


我在做什么错?我如何获取/设置元素的CSS属性?

相关的HTML:

<div class="row"> 
    <div style="background: #DDDDDD"> 

    </div> 
</div> 
<audio id="soundB"> 
    <source src=sounds/B.wav> 
</audio> 
+0

会发生什么,如果你离开了'.prev( )'?它的工作呢?另外,你有一个“盒子”,另一个是“音频”。 –

+0

对不起,我写错问题。现在修好。我尝试删除'prev()',但它也不起作用。仍然记录'rgba(0,0,0,0)无重复滚动0%0%/自动填充框边框 – senty

+0

你能给我们显示有问题的html的实际标记吗? –

回答

2

.prev()将返回previous元素和.html()将返回匹配元素的innerHTML

在这种情况下,你的发言,$(audio).prev().html();将返回<div class="col-md-8" style="background: #DDDDDD"></div>元素,但$(audio).prev().css("background")将返回这是<div class="row">预期元素的父元素的css财产。由于该元素没有背景样式集,它返回rgb(0, 0, 0)

试试这个:$(audio).prev().find('div').css("background")

还要注意:颜色总是返回RGB

+1

工程就像魅力!非常感谢。 – senty

0

这是给你的全部风格的元素,指定了不只是色彩的背景。尝试使用“背景色”代替。