問題:
動態更新元素的文字是web 經常遇到到的問題開發人員,尤其是在處理複雜的DOM 結構時。考慮以下 HTML 片段:
<div>
任務是修改粗體文字而不影響子段落。這是一個挑戰,特別是對於 jQuery 初學者。
jQuery 解決方案:
Mark 提供了一個使用jQuery 的最佳解決方案,它提供了簡潔高效的功能:
$("div#my-div").contents().filter(function() { return this.nodeType == 3; // Node type 3 represents text nodes }).text("New Text");
JavaScript解決方案(可選):
在純 JavaScript 中,childNodes 屬性可用於存取元素的所有子節點,包括文字節點。如果目標文本總是第一個子文本,可以採用以下方法:
var myDiv = document.getElementById("my-div"); var textNode = myDiv.childNodes[0]; // Assume the text is the first child textNode.nodeValue = "New Text";
結論:
都可以應用jQuery 和JavaScript 來動態更新元素的文本,同時保留其子元素。 jQuery 解決方案提供了一種簡潔且通用的方法,而 JavaScript 方法提供了更具體的解決方案,假設文字是第一個子元素。
以上是如何更新元素內的文字而不影響其子元素?的詳細內容。更多資訊請關注PHP中文網其他相關文章!