1

だから私はこのコードを持っています( Fiddle ):

(function() {
  var meter = document.getElementById('somemeter');
  var Likes = document.getElementById('likes');
  var Dislikes = document.getElementById('dislikes');

  meter.max = Likes.innerHTML + Dislikes.innerHTML;
  meter.value = Likes.innerHTML - Dislikes.innerHTML;
})();
<div id="likes">500</div>
<div id="dislikes">50</div>
<meter value="10" min="0" max="1000" id="somemeter"></meter>

ご覧のとおり、、およびLikes.innerHTMLです500Dislikes.innerHTML 50

何らかの理由で、ormeter.maxを使用すると が機能しません。ただし、forとでそれらを置き換えると、機能します。Likes.innerHTMLDislikes.innerHTMLmeter.max50050

私は何か間違ったことをしていますか?

4

3 に答える 3

0

数学を機能させるには、文字列を数値に変換する必要があります。

(function() {
  var meter = document.getElementById('somemeter');
  var Likes = document.getElementById('likes');
  var Dislikes = document.getElementById('dislikes');

  meter.max = Number(Likes.innerHTML) + Number(Dislikes.innerHTML);
  meter.value = Number(Likes.innerHTML) - Number(Dislikes.innerHTML);
})();

フィドル

于 2016-09-29T17:55:07.490 に答える