3

我正在开发一个 JavaScript 项目,我需要在其中显示一组数字。这个数字可以是整数或分数。我需要以经典方式显示分数,我的意思是,顶部数字,在一行下方和另一个数字下方,如本例所示:

http://jsfiddle.net/xW7d8/

问题是我正在谈论的数组是包含数字的数组,并且使用 Jquery 我更改了 div 的文本,因此我显示了数字,就像这样:

97,30,58,53,42,60,77,11

69/90,10/32,74/74,9/54,69/2,17/86,62/72,55/85

我要做的第一件事是填充数组,将数字保存为字符串,然后更改 div 的文本。以下是我在代码中所做的:

var array = fillArray();//this fill an array of numbers, integers or fractions
var stringArray;//will contains the numbers of the array
for(var i=0;i<array.length;i++)
{
  stringArray+= array[i];
}
$("#num1").text(stringArray);

这样,我不能为每个数字添加一个 div ID,如果我尝试这样做,它不会被解释为 HTML,我会采用 HTML 标签本身的文本,例如,如果我尝试,对于数字 1/2去做:

<span class="fraction">1/2</span>

我真的得到了 span 类,它不是作为 HTML 代码读取的。

我还尝试在 JavaScript 代码本身中生成分数的格式:

var number = x + "\n" + "-" + "\n" + y;

这不起作用,它不识别“\n”,也不识别“\r”等(如果我尝试使用 < br/ > 是字面意思)

有没有办法以我想要的方式获得分数?可能我需要在 JavaScript 本身中生成这种格式的数字,而不需要 HTML 标签的帮助。

4

2 回答 2

3

用包含标签的字符串试试这个。不过,它应该以标签开头:

$("#num1").html(stringArray);

但是由于你的小提琴用分数类重写了 div,你可能只想自己生成分数的整个 html。<span class="top">1</span><span class="bottom">2</span>而不是执行<span class='fraction'>1/2</span>然后运行代码进行转换。

于 2013-08-06T19:34:37.593 回答
1

听起来你想使用 JQuery 的 html() 函数而不是 text()

$("#num1").html(stringArray);

这有帮助吗?

于 2013-08-06T19:38:06.797 回答