javascript - 如何获取documentFragment中的子节点?

标签 javascript html extjs extjs4

我需要知道我提取的内容中是否存在“跨度”。

简单的 js 部分,从 textarea 中获取选择:

...
selection = this.getWin().getSelection().getRangeAt(0);
content = selection.extractContents();
alert(content)// this gets documentFragment
alert(content.firstChild)//null
fontEl = document.createElement ("span")
fontEl.appendChild(content);
alert(fontEl.outerHTML)// works ok. but now i have 2 spans if there was one before append

这是我的 jsfiddle。我测试更改字体大小。它有效,但由于这个问题,它正在发送垃圾邮件。 http://jsfiddle.net/DCGRg/73/

最佳答案

您的代码离我们不远了。这是一个更新的演示:

http://jsfiddle.net/DCGRg/73/

相关代码如下:

var font_size = combo.getValue();
var selection = this.getWin().getSelection();
if (selection.rangeCount > 0) {
    var range = selection.getRangeAt(0);
    var content = range.extractContents();
    var fontEl = this.getWin().document.createElement("span");
    fontEl.style.fontSize = font_size + 'px';
    fontEl.appendChild(content);
    range.insertNode(fontEl);
    selection.selectAllChildren(fontEl);
}

关于javascript - 如何获取documentFragment中的子节点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12840916/

相关文章:

javascript - 将 JQuery 事件绑定(bind)到通过 jquery 加载页面后创建的 html

javascript - 斐波那契数列 Javascript 执行 while 循环

extjs - 使用 ExtJS onFilefieldChange 上传文件

java - Java EE 中的 HTML 提交按钮处理

html - 当 Bootstrap 元素宽度被修改时,我如何在媒体查询中保持一致

extjs - 如何在 ExtJS 3.x 中构建可拖动字段集

java - 使用js或extjs访问java对象列表

javascript - 在对象声明中覆盖 toString 原型(prototype)

javascript - 特征检测 :focus-within pseudo-class 的最佳方法

html - 如何在不超出屏幕的情况下将图像放在文本旁边?