0

私はアークテキストを動的に作成するのが好きなので、arctext jquery プラグインを使用し、range html タグを使用してテキスト内のアークまたはカーブを選択しました。

これは私のhtmlコードです

<label>Curve:</label>
<input type="range" name="value" id="value" min="-100" max="100" value="0" />
<p  id="textvalue"> I wanna to be curve</p> 

JavaScript コード :

<script type="text/javascript">
$(function(){
  $("#value").change(function () {
    var newValue = $('#value').val();
    changetext(newValue);
  });
  function changetext(newValue){
    console.log(newValue);
    var pos;
    if(newValue>0)
      pos=1;
    else{
      pos=-1;
      $("#textvalue").hide();
      $("#textvalue").show().arctext({radius:newValue, dir: pos});
    }
  }
});
</script>

しかし、このコードは最初のドラッグで機能します。しかし、後でそれは変わらないままです。範囲の値は、console.log で知ったように変化し続けています。

4

1 に答える 1

1

$("textvalue"). hide() を if ステートメントの中かっこの外に置くつもりだったと思います。また、スライダーは負になり、テキストは正の値のみを取ります。これを見て、それを機能させる唯一の方法は、要素を完全に削除して別の半径に置き換えることでした。

$(function(){
$("#value").change(function () {
 var newValue = $('#value').val();
 changetext(newValue);
});
function changetext(newValue){
  console.log(newValue);
  var pos;
  if(newValue>0)
   pos=1;
  else{
   pos=-1;
  }
  var text = $("#textvalue").text();
  $("#textvalue").remove();
  $('body').append('<p id="textvalue">'+ text +'</p>');
  $("#textvalue").arctext({radius:Math.abs(newValue), dir: pos});
 }
});
于 2013-08-04T10:15:21.403 に答える