3

我正在使用 appcelerator 构建一个应用程序,它需要显示一个数学表达式,例如 2^3,但 3 是 2 之上的一个小数字。有没有办法在 Javascript 中表达数学表达式?

笔记

  • 文本是一段静态的文本。
  • 使用的语言是Javascript。
  • 在 appcelerator 框架中的 iPhone/Android 模拟器上运行。
  • Appcelerator 转义 HTML

提前感谢您的任何帮助。

4

5 回答 5

2

"2"+"3".sup()应该给你正确的格式。

也可以.sub()用于下标。

于 2011-07-21T14:00:33.313 回答
2

如果你只关心显示,你可以利用 html 标签<sub></sub><sup></sup>这使得它们之间的文本成为sub script 和sup erscript。
一个很大的优点是本机 javascript 字符串具有返回包含在这些标签中的字符串的功能(并不是说它很难实现):

var a = "2",
    b = "3",
    formattedEquation = a+b.sup(),
    r = Math.pow(a,b),
    htmlEquation = formattedEquation + ' = ' + r;
// let's say you use jquery for the simplicity of the example
$(myContainer).html(htmlEquation);
于 2011-07-21T14:07:48.697 回答
1

对于更精细的数学排版,您可以使用MathJax JavaScript 显示引擎。它看起来与 WebKit 完全兼容,并且似乎可以在我的 iOS 设备上很好地排版。

于 2011-07-21T15:48:42.617 回答
0

一些可以在 JQueryMobile 等平台上运行的好主意,但不幸的是 Appcelerator 会转义所有 html(除非您的编码仅适用于 Android)。

显示数学表达式的方法是按照 Pat 在注释中的建议定义字符串中的 unicode 字符。

例如

2\u00B3
于 2011-07-21T14:35:56.257 回答
0

HTML中有<sup><sub>标签,试试这个:

<html>x<sup>4</sup>+y<sup>1245687</sup></html>

如果这还不够,请查看MathML

于 2011-07-21T14:00:17.727 回答