CharacterData#
CharacterData.data#
Właściwość data
zwraca lub ustawia dane tekstowe skojarzone z danym węzłem znakowym.
Opis działania#
Samo wywołanie i poszczególne jego części najlepiej objaśnić na zapisie składniowym:
var node_data = node.data; // getting node.data = new_data; // setting
gdzie poszczególne człony oznaczają:
- node_data - łańcuch znakowy reprezentujący dane tekstowe.
- node - węzeł znakowy będący obiektem kontekstu.
- new_data - łańcuch znakowy reprezentujący nowe dane tekstowe. Wartość
null
jest traktowana jak pusty łańcuch znakowy.
W przypadku odczytywania danych tekstowych z węzła znakowego właściwości data
działa identycznie, jak wywołanie metody CharacterData.substring(offset, count)
, z argumentami o następujących wartościach:
- offset - przesunięcie ustawione na
0
. - count - licznik ustawiony na wartość z właściwości
CharacterData.length
.
W przypadku ustawiania danych tekstowych w węźle znakowym właściwości data
działa identycznie, jak wywołanie metody CharacterData.replaceData(offset, count, data)
, z argumentami o następujących wartościach:
- offset - przesunięcie ustawione na
0
. - count - licznik ustawiony na wartość z właściwości
CharacterData.length
. - data - nowe dane tekstowe.
Warto nadmienić, że w obu przypadkach argument offset
przekazywany do metody nie może być większy od wartości z właściwości CharacterData.length
danego węzła znakowego, bo zrzucony zostanie błąd.
Alternatywnie można skorzystać z identycznie działających właściwości Node.nodeValue
i Node.textContent
, dotyczy to zarówno odczytywania jak i ustawiania danych tekstowych.
Prosty przykład:
<!DOCTYPE html>
<html>
<head>
<script>
// Uruchom po całkowitym załadowaniu dokumentu
window.onload = function(){
var content = document.body;
var newText = document.createTextNode("Początkowa treść węzła tekstwoego.");
var result = "";
// Odczyt danych tekstowych różnymi sposobami
content.innerHTML += "<p style='color:blue;'>Wyniki dla węzła tekstowego o treści 'Początkowa treść węzła tekstwoego.':</p>"
+ "Nazwa interfejsu: " + newText
+ "<br>" + "Właściwość data: " + newText.data
+ "<br>" + "Właściwość nodeValue: " + newText.nodeValue
+ "<br>" + "Właściwość textConent: " + newText.textContent;
// Ustawianie danych tekstowych różnymi sposobami
newText.data = "Nowa treść węzła tekstowego ustawiana za pomocą właściwości data.";
result += newText.data;
newText.nodeValue = "Nowa treść węzła tekstowego ustawiana za pomocą właściwości nodeValue.";
result += "<br>" + newText.nodeValue;
newText.textContent = "Nowa treść węzła tekstowego ustawiana za pomocą właściwości textContent.";
result += "<br>" + newText.textContent;
newText.textContent = null;
result += "<br>" + newText.textContent;
content.innerHTML += "<p style='color:blue;'>Zmiana danych węzła tekstowego:</p>" + result;
}
</script>
</head>
<body>
</body>
</html>
Składnia Web IDL#
interface CharacterData : Node { [TreatNullAs=EmptyString] attribute DOMString data; }