CharacterData#

CharacterData.deleteData()#

Metoda deleteData() usuwa konkretną część znaków z danych tekstowych skojarzonych 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:

  1. L
  2. K
  3. T'
  4. T
  5. A
  6. O
  7. Z'
  8. Z
  9. #
node.deleteData(offset, count);

gdzie poszczególne człony oznaczają:

Algorytm wywołania metody deleteData(offset, count) nie jest skomplikowany. Dla lepszego zrozumienia tematu prezentuję go w całości:

  1. Zwróć wynik zastępowania danych tekstowych z węzłem będącym obiektem kontekstu, przesunięciem wskazywanym przez offset, licznikiem wskazywanym przez count oraz danymi tekstowymi w postaci pustego łańcucha znakowego.

Identyczny efekt uzyskamy poprzez wywołanie metody CharacterData.replaceData(offset, count, data) z argumentami o następujących wartościach:

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.

Prosty przykład:

  1. L
  2. K
  3. T'
  4. T
  5. A
  6. O
  7. Z'
  8. Z
  9. #
<!DOCTYPE html>
<html>

<head>

	<script>

		function delData(offset, count){

			var result = document.getElementById("info");

			try{

				var cloneText = document.getElementById("tekst").firstChild.cloneNode();
				cloneText.deleteData(offset, count);
				result.innerHTML = cloneText.data;

			}
			catch(e){

				result.innerHTML = "Przekazanie przesunięcia większego od liczby jednostek kodowych zrzuca błąd:"
				result.innerHTML += "<br>" + e; // opis zależny od przeglądarki
				result.innerHTML += "<br>" + e.constructor; // function DOMException() { [native code] }

			}

		}

	</script>

</head>

<body>
	<p>Kliknij konkretny przycisk by usunąć pewną część danych tekstowych w testowym akapicie.</p>
	<input type="button" value="deleteData('0', '0')" onclick="delData('0', '0')">
	<input type="button" value="deleteData('0', '5')" onclick="delData('0', '5')">
	<input type="button" value="deleteData('5', '10')" onclick="delData('5', '10')">
	<input type="button" value="deleteData('0', '50')" onclick="delData('0', '50')">
	<input type="button" value="deleteData('50', '0')" onclick="delData('50', '0')">
	<p id="tekst" >Węzeł tekstowy umieszczony w testowym akapicie.</p>

	<p style="color: blue;">Wynik działania przycisków:</p>
	<p id="info"></p>
</body>

</html>

Składnia Web IDL#

  1. L
  2. K
  3. T'
  4. T
  5. A
  6. O
  7. Z'
  8. Z
  9. #
interface CharacterData : Node {
	void deleteData(unsigned long offset, unsigned long count);
}

Specyfikacje i inne materiały#

Pasek społecznościowy

SPIS TREŚCI AKTUALNEJ STRONY

CharacterData (H1) CharacterData.deleteData() (H2) Opis działania (H3) Składnia Web IDL (H3) Specyfikacje i inne materiały (H3)