Метод jQuery text() не работает с текстовыми узлами:
$('div').contents().filter(function(){
return this.nodeType === 3;
}).text("new text");
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div>
textNode text doesn't change
</div>
У меня вопрос: что может быть причиной этого?
Трудно ли справиться с текстовыми узлами withespace? И/или текстовые узлы потомков более глубокого уровня, чем только дочерние?
Я не спрашиваю, как это изменить, я знаю обходные пути, но почему метод jq text()
не поддерживает текстовые узлы? Я ожидаю, что этот метод будет использоваться для любого текстового узла, который сможет изменить значение своего узла.
Я совершенно уверен, что для этого есть веская причина, я не могу просто получить ее.