javascript – 计算HTML中2个数字之间的差异并应用css类

前端之家收集整理的这篇文章主要介绍了javascript – 计算HTML中2个数字之间的差异并应用css类前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我正在尝试做一些我认为非常简单但没有太多运气的事情.我有两个长长的分数列表要比较,每对都在自己的div中.我正在寻找一个我可以指定div ID的函数,并在第三个div中反映出不同的函数.如果数字是正数,则应用一个类,如果是负数,则应用另一个类.

  1. score">50

在我的JavaScript中:

  1. $(window).ready(function() {
  2. $('#diff').html(diff);
  3. });
  4. var diff = calc("score","benchmark");
  5. function calc(divID1,divID2) {
  6. div1 = document.getElementById(divID1);
  7. metric = div1.innerHTML;
  8. div2 = document.getElementById(divID2);
  9. benchmark = div2.innerHTML;
  10. c = Math.abs(a) - Math.abs(b);
  11. // this is the difference here
  12. return String(c);
  13. };

我加载了D3和JQuery. div列中的数字是通过其他函数动态生成的,因此我无法对样式进行硬编码.

最佳答案
当DOM还没有准备好时,你不能计算2个元素的值之间的差异.

(您当前的就绪处理程序未执行实际计算,只是将已经错误计算的值附加到某个元素).

试试这个:

  1. $(document).ready(function() {
  2. var diff = Math.abs($("#score").text()) - Math.abs($("#benchmark").text());
  3. $('#diff').html(diff).addClass(diff > 0 ? 'positive' : 'negative');
  4. });

另外,我将$(window).ready()更改为$(document).ready().

猜你在找的HTML相关文章