捕获 MyScript Katex 注释编码字段,以便在其他地方使用

capture MyScript Katex annotation encoding field for use elsewhere

本文关键字:其他 方使用 Katex MyScript 注释 编码 字段 捕获      更新时间:2023-09-26

我是MyScript和Katex的新手,所以这可能是一个非常愚蠢的问题。 如果是这样,我深表歉意。 我正在玩一个想法,称之为NewApp。 我希望用户能够将公式写入屏幕上,MyScript 会将其转换为 Katex 并显示回来,以便用户可以确认正确理解它,然后将结果发送到 NewApp。 为了在NewApp中检查用户的响应,我认为最好的方法是将Katex注释编码发送到NewApp,我认为这需要通过一些Javascript来完成,但我不知道如何拿起Katex。 Katex 的 HTML 将如下所示,具体取决于输入的公式。

<div id="resultField" class="style-scope myscript-math-web">
 <span class="katex">
  <span class="katex-mathml">
   <math>
    <semantics>
     <mrow>
      <mfrac>
       <mrow>
        <mn>2</mn>
        <mn>1</mn>
        <mo>−</mo>
        <mn>3</mn>
        <mn>5</mn>
       </mrow>
       <mrow>
        <mn>1</mn>
        <mn>3</mn>
       </mrow>
      </mfrac>
      <annotation encoding="application/x-tex">'dfrac {21-35} {13}</annotation>       
     </semantics>
    </math>
   </span>
  </span>
 </div>

我不知道如何开始为此使用 javascript,因为div 中的所有内容都是在用户编写时在蹄子上创建的,但我确信会有一种 javascript 方法允许我在 javascript 中获取<annotation encoding="application/x-tex">'dfrac {21-35} {13}</annotation>的内容。

任何帮助将不胜感激。

解决了 - 一切都很简单,所以我不知道为什么我今天早上看不到它。

<script>
    function copy_result() {
        elms = document.getElementById("resultField").getElementsByTagName("annotation");
        console.log(elms[0].innerHTML);
    }
</script>

显然,控制台.log只是给了我结果,我应该把它放在有用的地方