我需要在用户开始输入div时在div中创建一个span元素。我已将div的contenteditable属性设置为true,但由于这个原因,输入的文本正在成为div的一部分而不是我尝试使用spanelement.focus()方法的跨度,但它没有解决我的问题。
这是我的示例代码段:
Element div = DOM.createDiv();
div.setClassName("intelliTextField");
div.setId("intelliTextField");
div.setAttribute("contenteditable", "true");
SpanElement span =div.appendChild(Document.get().createSpanElement());
initialSpan.setAttribute("contenteditable", "true");
我会在用户开始输入div时将此span元素附加到div。但输入的文本正在成为div的一部分而不是span。
任何帮助?
答案 0 :(得分:2)
这是你的意思吗?
Element div = DOM.createDiv();
div.setClassName("intelliTextField");
div.setId("intelliTextField");
div.setAttribute("contenteditable", "true");
Element spanElement = DOM.createSpan();
SpanElement mySpanElement = SpanElement.as(spanElement )
//do some job on SpanElement
DOM.appendChild(div, mySpanElement);
当然你可以省略创建SpanElement对象并通过appendChild将spanElement直接放入div中