1. ホーム
  2. javascript

[解決済み] cssのtopの値を文字列ではなく数値で取得する?

2022-08-04 20:16:31

質問

jQueryでは、親からの相対的なtopの位置を数値で取得することができますが、cssのtopの値は、それが px .

次のようなものがあるとします。

#elem{
  position:relative;
  top:10px;
 }

<div>
  Bla text bla this takes op vertical space....
  <div id='elem'>bla</div>
</div>

$('#elem').position().top; //Returns the number (10+(the vertical space took by the text))
$('#elem').css('top'); //Returns the string '10px'

しかし、cssのtopプロパティを数字にしたいので 10 .

どのようにしてこれを実現するのでしょうか?

どのように解決するのですか?

文字列を数値に変換するには、parseInt()関数を使用することができます。

parseInt($('#elem').css('top'));

更新しました。 を追加しました (Benの提案による)。基数も指定する必要があります。

parseInt($('#elem').css('top'), 10);

そうでない場合、'0' で始まる文字列は 8 進数として解析されるかもしれません (使用するブラウザに依存するかもしれません)。