0

css セレクター :after の値を編集しようとしましたが、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で枠線の色を変更したいです。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);
4

2 に答える 2

0

:afterセレクターではなく、疑似セレクターです。そのため、これは DOM の一部ではなく、Javascript からアクセスすることはできません。

于 2013-06-11T09:40:16.963 に答える
0

で試してください。次の() のように

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

そして、このリンクを試してください。次のようなセレクターはありません: after

于 2013-06-11T09:37:26.590 に答える