在HTML元素之前或之后添加文本
Add text before or after an HTML element
如果我有一个像<div>
这样的HTML元素,里面有一些文本或其他元素,我可以在这个div之前或之后添加一些没有HTML元素的文本数据,只是纯文本吗?
我想只使用纯Javascript。
例如:
<div id="parentDiv">
my text must be added here
<div id="childDiv"></div>
</div>
是的,您可以使用document.createTextNode('the text')
创建文本节点
然后你可以像插入元素一样插入它,使用appendChild或insertBefore。
在#childDiv:
前插入文本的示例var text = document.createTextNode('the text');
var child = document.getElementById('childDiv');
child.parentNode.insertBefore(text, child);
郑重声明:
div.insertAdjacentHTML( 'beforeBegin', yourText );
其中div
是您的子div。
现场演示: http://jsfiddle.net/ZkzDk/
如果您只需要文本,我发现element.insertAdjacentText(position, text)
在许多情况下都是灵活的,并且还与IE6等旧浏览器兼容。其中position
是您想要文本所在的位置,text
是文本节点或只是一个字符串。选项为:
-
'beforebegin'
在元素本身之前。 -
'afterbegin'
在元素内部,在它的第一个子元素之前。 -
'beforeend'
在元素内部,在它的最后一个子元素之后。 -
'afterend'
元素本身之后。
:
let div = document.getElementById('parentDiv');
div.insertAdjacentText('afterbegin', 'My Plain Text..');
关于在之前或之后插入的主题和用户问题,这里有一个after的例子:
var text = document.createTextNode("my text must be added here.");
var childTag = document.getElementById("childDiv");
childTag.parentNode.insertBefore(text, childTag.nextSibling);
如果childTag没有任何兄弟,则没关系,因为insertBefore方法处理这种情况,并简单地将其作为最后一个子元素添加。
也可以在创建文本节点后使用appendChild()方法,然后通过parentNode添加childTag。
可以添加文本节点。创建节点- document.createTextNode('text')
,然后插入/追加/替换-做任何你想做的
应该这样做:
<script type="text/javascript">
var parent = document.getElementById('parentDiv');
var sibling = document.getElementById('childDiv');
var text = document.createTextNode('new text');
parent.insertBefore(text, sibling);
</script>
相关文章:
- 如何在侦听器之后添加可拖动功能
- AngularJS:在.post()之后添加事件侦听器
- jqgridnavgrid在搜索按钮和自定义按钮之后添加按钮
- 将.live或.on添加到jquery函数中
- 如何使用 ContentTools 在之前或之后没有内容时保留多个
- 使用KendoUI网格,您将如何将可选图像或图标添加到行模板中
- 向构造函数或原型添加属性之间的区别
- 如何在wooccommerce脚本之后添加自定义java脚本
- 为什么当我更改或尝试添加另一类不同的输入时,总和会停止工作
- 如果在transclusion之后添加,为什么指令下的动态元素具有错误的作用域
- 如何将页眉或徽标添加到高图导出的PDF中
- 在使用jquery验证电子邮件之后添加一个类
- 如何使用Javascript或Jquery在X个
- 之后添加子菜单
- 在jQuery的显示和隐藏动画之后添加类
- 煎茶触摸 - 在组件之后添加/插入
- Qualtrics:在矩阵表中的文本框之前/之后添加不同的字符
- 如何在 select.options.add(new Option()) 之后添加 2 个属性
- 使用 javascript 或 jQuery 添加 CSS 媒体查询
- 在HTML元素之前或之后添加文本
- 在angularjs中,我可以在$timeout之后添加回调函数或语句吗?