我想用jQuery修改箭头元素的边框,但是它不会被修改。
但是它可以很好地工作在CSS上。
HTML>>
<div class="pointer">
<div class="arrow"></div>
<div class="arrow_border"></div>
</div>
JQUERY>>
$('.arrow_border').css({'border':'rgb(0, 0, 0, 0) rgb(rgb(219, 0, 219) rgb(0, 0, 0) rgb(0, 0, 0) !important;'});
$('.arrow_border').css({'border-color':'rgb(0, 0, 0, 0) rgb(rgb(219, 0, 219) rgb(0, 0, 0) rgb(0, 0, 0) !important;'});
CSS >>
.arrow, .arrow_border {
border-color: rgba(0, 0, 0, 0) rgb(80, 255, 255) rgba(0, 0, 0, 0) rgba(0, 0, 0, 0);
border-width: 11px;
border-style: solid;
font-size: 0;
left: 50%;
line-height: 0;
margin: 0 auto;
position: absolute;
top: 0;
width: 0;
z-index: 1002;
left: 0;
margin-left: 45%;
}
发布于 2014-04-24 08:04:52
使用JavaScript设置样式属性与使用CSS不完全相同。
您仍然可以在jQuery中使用string属性名称,但我建议使用JavaScript等效属性。borderColor
而不是'border-color'
。jQuery为您翻译它,但是任何翻译都会使您的脚本更慢。
!important
不会在JavaScript中工作,因为它不是一个实际值。有办法但我不会去那里。它也完全没有必要,因为它已经比样式表中的任何东西都具有更高的优先级。(特异性)
设置边框将覆盖css中以前设置的所有属性。您应该覆盖尽可能具体的内容。在这种情况下,您应该使用:
$('.arrow_border').css({
borderRightColor: 'rgb(219, 0, 219)'
});
如果要设置边框属性,还必须再次包括边框宽度和边框样式。这与CSS (文件)中的行为相同。
发布于 2014-04-24 08:11:33
Verry尼斯从勒内解释说,你应该阅读它,如果你想设置许多属性,它应该是这样的:http://jsfiddle.net/vjaJg/3/
$('.arrow_border').css({
'borderRightColor' : 'rgba(120,255,255,0.9)',
'borderLeftColor' : 'rgba(255,120,255,0.9)',
'borderTopColor' : 'rgba(255,255,120,0.9)',
'borderBottomColor' : 'rgba(120,255,255,0.9)'
});
https://stackoverflow.com/questions/23262625
复制相似问题