как установить стек в mathjax? - PullRequest
0 голосов
/ 04 сентября 2018

Я хочу установить выражение стека в mathjax (динамически)

это мой стек

var showStack=[];
showStack.push({
                Key: 'topic',
                Value:"سرمایه"
            });
showStack.push({
                Key: 'operator',
                Value: "+"
            });            
showStack.push({
                Key: 'topic',
                Value: "مالیات"
            });          
showStack.push({
                Key: 'opeator',
                Value: "/"
            });
showStack.push({
                Key: 'number',
                Value: "8569"
            });            
showStack.push({
                Key: 'opeator',
                Value: "-"
            });      
showStack.push({
                Key: 'topic',
                Value: "اندوخته قانونی - سال قبل"
            });      

и этот код создает мою формулу из моего стека

  jQuery.each( showStack, function( i, val ) {
  if(val.Key=='topic'){
    text+='`\\text{'+ val.Value+'}`';
  }
  else
    text+=val.Value;
});

createFormula для создания формулы mathjax

 function createFormula() {
  var text="";
  MathJax.Hub.Config({
    "HTML-CSS": { mtextFontInherit: true }
});


  document.querySelector('#formula').textContent =text;
  MathJax.Hub.Queue(["Typeset",MathJax.Hub,'formula']);      
 }

но результат

سرمایه+مالیات/8569-اندوخته قانونی - سال قبل

мой код не работает, где моя проблема? спасибо

1 Ответ

0 голосов
/ 04 сентября 2018

Вы просто должны изменить этот код

 var text="";
jQuery.each( showStack, function( i, val ) {
  if(val.Key=='topic'){
    text+='\\text{'+ val.Value+'}'; // remove `
  }
  else
    text+=val.Value;
});

И добавьте этот код

var value='`'+text+'`';

 document.querySelector('#formula').textContent =value;
 MathJax.Hub.Queue(["Typeset",MathJax.Hub,'formula']);
...