jQuery替代值等于;第一个孩子。nodeValue“;

jQuery替代值等于;第一个孩子。nodeValue“;,jquery,Jquery,我一直在努力寻找一种与以下功能完全相同的jQuery替代方案: document.getElementById("element").firstChild.nodeValue = value; 以下是相关的html结构: <div id="clock"> <div id="day"> </div> <div id="date"> </div> </div> 对于“天”和“日期”,我可以

我一直在努力寻找一种与以下功能完全相同的jQuery替代方案:

document.getElementById("element").firstChild.nodeValue = value;
以下是相关的html结构:

<div id="clock">
    <div id="day">
    </div>
    <div id="date">
    </div>
</div>

对于“天”和“日期”,我可以只使用
$(“#天”).text(天)
$(“#日期”).text(日期)
但一旦我使用
$(“#时钟”).text(时钟)
作为“时钟”,则“天”和“日期”消失,只显示“时钟”元素

当然,“clock”是另外两个的父元素,所以如果我使用jQuery代码,它可能会“覆盖”子元素。奇怪的是,使用像
:first child
:first
这样的伪元素没有帮助


很高兴听到解决方案!谢谢。

您似乎想在
#day
元素之前插入一些文本

$("#clock").prepend('your text');

我应该这样做


请注意,
.firstChild.nodeValue=value仅在元素前插入新文本,因为在元素前有一个文本节点,仅包含空格。如果你的HTML是

<div id="clock"><div id="day"></div></div>


它不会做任何事情,因为
.firstChild
将引用
#day
,并且
节点评估值
没有为元素节点定义。

似乎您想在
#day
元素之前插入一些文本

$("#clock").prepend('your text');

我应该这样做


请注意,
.firstChild.nodeValue=value仅在元素前插入新文本,因为在元素前有一个文本节点,仅包含空格。如果你的HTML是

<div id="clock"><div id="day"></div></div>


它不会做任何事情,因为
.firstChild
将引用
#day
,并且
节点值
未为元素节点定义。

如果要为“clock”Div的第一个子节点设置值,必须执行以下操作:

$("#clock :first").text("Your Content");

如果要为“clock”Div的第一个子项设置值,必须执行以下操作:

$("#clock :first").text("Your Content");

我懂了。。我完全忘记了使用某种“before”函数的想法。我测试了它,它工作了。非常感谢!我懂了。。我完全忘记了使用某种“before”函数的想法。我测试了它,它工作了。非常感谢!