选择器更改后不会更改

时间:2013-06-11 09:35:25

标签: jquery

我尝试编辑css选择器的值:之后,但它不能在jQuery中工作

$('.triangle-right.left:after').css("border-color","transparent #fff");

怎么办?

CSS:

.triangle-right.left:after {
 top:4px; 
 left:-10px; /* value = - border-left-width - border-right-width */
 bottom:auto;
 border-width:15px 15px 0 0; /* vary these values to change the angle of the vertex */
 border-color:transparent #bdd5bb; 
}

我想在javascript中更改border-color。 HTML:

document.getElementById('canvas').innerHTML += "<div id='talkbubble-" + u + "' style='display:none;color:#000;position:absolute;left:" + (left +9) + "px;top:" + (top + 1) + "px;z-index:" + (z + 95) + "'>" +

"<p class='triangle-right left' id='text_"+u+"' style=\"color:#0d0e0c;background:#bdd5bb;\"></p>" + 
"</DIV>";

的Javascript / jQuery的:

 $('#text_'+u).css("color","#000");
           $('.triangle-right.left').next().css("border-color","transparent #fff");


           $('#text_'+u).css("color","#0d0e0c");
           $('#text_'+u).css("background","#fff");



              $('#text_' + u).html(sockb.data.text);

      $('#talkbubble-' + u).fadeIn();

                  tDelays[u] = setTimeout(function () {
                      $('#talkbubble-' + u).fadeOut(function () {
                          $('#text_' + u).html("");
                          delete tDelays[u];
                      });
                  }, 15000);

2 个答案:

答案 0 :(得分:0)

尝试。下一步(),如

$('.triangle-right.left').next().css("border-color","transparent #fff");

试试这个LINK没有像之后的选择

答案 1 :(得分:0)

:after不是选择器,而是伪选择器。因此,它不是DOM的一部分,无法通过Javascript访问。