javascript编辑器a.$.parentNode为空
我正在eclipse中制作designer studio扩展。我必须用javascript和d3(包括HTML)构建我的整个应用程序。我必须制作一个文本区域,可以用粗体文本等进行格式化,所以我考虑使用CKEditor。我以正确的方式实现了所有文件,并且我的路径都是正确的。这是我目前使用的代码javascript编辑器a.$.parentNode为空,javascript,d3.js,Javascript,D3.js,我正在eclipse中制作designer studio扩展。我必须用javascript和d3(包括HTML)构建我的整个应用程序。我必须制作一个文本区域,可以用粗体文本等进行格式化,所以我考虑使用CKEditor。我以正确的方式实现了所有文件,并且我的路径都是正确的。这是我目前使用的代码 text = theDiagram.append("foreignObject") .attr("x", "0") .attr("y", "50") .att
text = theDiagram.append("foreignObject")
.attr("x", "0")
.attr("y", "50")
.attr("width", "100%")
.attr("height", "100%")
.append("xhtml:body")
.html('<div><textarea id="tekstvak" placeholder="enter some text here..." maxlength="1000" rows="5" cols="40" name="tekstvak" class="tekstvak"></textarea></div>');
CKEDITOR.replace('tekstvak');
text=diagram.append(“外来对象”)
.attr(“x”、“0”)
.attr(“y”、“50”)
.attr(“宽度”、“100%”)
.attr(“高度”、“100%”)
.append(“xhtml:body”)
.html(“”);
CKEDITOR.替换(“tekstvak”);
但每次运行自定义组件时,都会出现以下错误:
TypeError:a.$.parentNode为空
当我运行代码时,我知道我的parentNode为null,但我还没有找到在javascript和d3中解决此问题的方法。好的,因此出于某种原因,如果您直接尝试实现ckeditor,您将遇到此错误,我解决此问题的方法是执行以下操作:
var myVar = setTimeout(myTimer, 100);
function myTimer() {
testcdk = CKEDITOR.replace('tekstvak',{
name:"cktekstak",
id:"cktekstak",
class:"cktekstak",
});
CKEDITOR.config.height = 210;
}
我不知道为什么,但如果我对它稍加延迟,它会工作好的,因此,出于某种原因,如果您直接尝试实现ckeditor,您将得到此错误,我解决此问题的方法是执行以下操作:
var myVar = setTimeout(myTimer, 100);
function myTimer() {
testcdk = CKEDITOR.replace('tekstvak',{
name:"cktekstak",
id:"cktekstak",
class:"cktekstak",
});
CKEDITOR.config.height = 210;
}
我不知道为什么,但如果我稍微延迟一下,它会工作还是没有解决?还是没有解决?