Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
未捕获错误:Can';t使用MathJax和p5和html对给定数据进行回调_Html_Dom_Callback_Mathjax_P5.js - Fatal编程技术网

未捕获错误:Can';t使用MathJax和p5和html对给定数据进行回调

未捕获错误:Can';t使用MathJax和p5和html对给定数据进行回调,html,dom,callback,mathjax,p5.js,Html,Dom,Callback,Mathjax,P5.js,当用户更改滑块的值时,尝试使用mathjax动态更新top等式。我知道mathjax只运行一次,除非被召回。我查阅了他们的文档,并尝试: document.getElementById(“eqn”).innerHTML=方程;(更改文本) var math=MathJax.Hub.getAllJax(“eqn”)[0];(从html中获取带有eqn标记的第一个元素) Queue([“Typeset”,MathJax.Hub,math]);(在元素上排队并重新运行mathjax),但我得到了如上所

当用户更改滑块的值时,尝试使用mathjax动态更新top等式。我知道mathjax只运行一次,除非被召回。我查阅了他们的文档,并尝试: document.getElementById(“eqn”).innerHTML=方程;(更改文本) var math=MathJax.Hub.getAllJax(“eqn”)[0];(从html中获取带有eqn标记的第一个元素) Queue([“Typeset”,MathJax.Hub,math]);(在元素上排队并重新运行mathjax),但我得到了如上所述的错误

经过研究,我不理解1或2个补丁,似乎大多数人都在用html编写所有代码,而不是用javascript或p5.js来回传递

下面是我的代码:

let cols,rows;
让图形化=20;
设xCount=-10;
让yCount=-10;
设点间距=0.1;
设x=[];
设y=[];
设xdot=[];
设ydot=[];
让aSlider、bSlider、hSlider、kSlider、BASESLUDER;
设a,b,h,k,基;
让sliderChanged=null;
var AbsValcheckbox、理性CheckBox、指数CheckBox、四元CheckBox、线性CheckBox、Logcheckbox、CubiCheckBox、Sqrtcheckbox、Cubertcheckbox、ResetBox;
设tableOfValues=新的p5.表格([21]);
设滑块高度=365//30每个之间的间距
让checkBoxHeight=100;
let方程;
让新的;
函数设置(){
createCanvas(400400);
AbsValcheckbox=createCheckbox(“绝对值”);
AbsValcheckbox.checked(true);
AbsValcheckbox.changed(选择Absval);
AbsValcheckbox.位置(410,CheckBox高度);
Quadcheckbox=createCheckbox(“二次”);
Quadcheckbox.checked(空);
Quadcheckbox.changed(选择Absval);
位置(410,复选框高度+20);
Cubiccheckbox=createCheckbox('Cubic');
Cubiccheckbox.checked(空);
Cubiccheckbox.changed(选择Abval);
立方体检查盒位置(410,检查盒高度+40);
Linearcheckbox=createCheckbox('Linear');
Linearcheckbox.checked(空);
Linearcheckbox.changed(选择absval);
线性复选框位置(410,复选框高度+60);
Sqrtcheckbox=createCheckbox('Square Root');
Sqrtcheckbox.checked(空);
Sqrtcheckbox.changed(选择absval);
Sqrtcheckbox.位置(410,CHECKBOX高度+80);
Cubertcheckbox=createCheckbox('Cube Root');
Cubertcheckbox.checked(空);
Cubertcheckbox.changed(选择Absval);
Cubertcheckbox.位置(410,CheckBox高度+100);
//Rationalcheckbox=createCheckbox('Rational');
//Rationalcheckbox.checked(空);
//理性检查框。已更改(选择absval);
Logcheckbox=createCheckbox(“对数”);
Logcheckbox.checked(空);
Logcheckbox.changed(选择absval);
Logcheckbox.位置(410,CheckBox高度+120);
Exponentialcheckbox=createCheckbox(“指数”);
指数checkbox.checked(null);
指数复选框。已更改(选择absval);
指数复选框位置(410,复选框高度+140);
//让table=createElement('t1','hereismytable');
//表1.位置(200490);
//html(“新测试”);
ResetBox=createButton(“重置”);
ResetBox.mousePressed(resetValues);
复位箱位置(450,滑块高度-50);
设ahtml=createP('a').addClass('ahk');
设hhtml=createP('h').addClass('ahk');
设khtml=createP('k').addClass('ahk');
让basehtml=createP('base').addClass('ahk');
ahtml位置(415,滑块-15);
hhtml位置(415,滑块高度+15);
khtml位置(415,滑块高度+45);
位置(400,滑块高度+75);
aSlider=createSlider(-5,5,1,0.01);
滑动位置(440,滑动高度);
a=aSlider.value();
hSlider=createSlider(-9,9,0,0.5);
H滑块位置(440,滑块高度+30);
h=hSlider.value();
kSlider=createSlider(-9,9,0,0.5);
K滑块位置(440,滑块高度+60);
k=kSlider.value();
baseSlider=createSlider(0.1,5,2,0.1);
基本滑块位置(440,滑块高度+90);
base=baseSlider.value();
cols=地板(宽度/图形化);
行=楼层(高度/图形化);
GenerateArray();
generateYArray();
aInput=createInput();
输入位置(440+滑块宽度+10,滑块高度);
输入大小(35,21);
输入值(a);
hInput=createInput();
铰链位置(440+hs滑块宽度+10,滑块高度+30);
hInput.尺寸(35,21);
hInput.值(h);
kInput=createInput();
扭摆位置(440+k滑块宽度+10,滑块高度+60);
kInput.大小(35,21);
输入值(k);
baseInput=createInput();
基本输入位置(440+k滑块宽度+10,滑块高度+90);
baseInput.size(35,21);
baseInput.value(base);
newEqn=createP('eqn2','eqn2');
}
函数绘图(){
背景(255);
if(AbsValcheckbox.checked()){
方程='`f(x)='+a++'*abs(x-'+h++')++'+kInput.value()++'';
}else if(Quadcheckbox.checked()){
方程='f(x)='+a+'*(x-'+h+')^2+'+kInput.value();
}else if(Cubiccheckbox.checked()){
方程='f(x)='+a+'*(x-'+h+')^3+'+kInput.value();
}else if(Linearcheckbox.checked()){
方程='f(x)='+a+'*(x-'+h+'++'+kInput.value();
}else if(Logcheckbox.checked()){
方程='f(x)='+a++'*log'+base++'(x-'+h++')+'+kInput.value();
}else if(Sqrtcheckbox.checked()){
方程='f(x)='+a++'*sqrt(x-'+h++'++'+kInput.value();
}else if(Cubertcheckbox.checked()){
方程='f(x)='+a+'*&8731(x-'+h+'++'+kInput.value();
}else if(指数checkbox.checked()){
方程='f(x)='+a+'*'+base+'^(x-'+h+'++'+kInput.value();
}
//html(方程式);
//所有这些都会导致回调错误
document.getElementById(“eqn”).innerHTML=方程;
var math=MathJax.Hub.getAllJax(“eqn”)[0];
Queue([“Typeset”,MathJax.Hub,math]);
中风(150);
冲程重量(1);
textAlign(中心、顶部);

对于(var i=0;i而言,问题在于以下代码:

document.getElementById("eqn").innerHTML = equation;
var math = MathJax.Hub.getAllJax("eqn")[0];
MathJax.Hub.Queue(["Typeset", MathJax.Hub, math]);
document.getElementById("eqn").innerHTML = equation;
MathJax.Hub.Queue(["Typeset", MathJax.Hub, "eqn"]);
var math = MathJax.Hub.getAllJax("eqn")[0];
MathJax.Hub.Queue(["Text", math, equation]);