Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«HTML: ΠŸΠΎΠΏΡƒΠ»ΡΡ€Π½Ρ‹ΠΉ ΡΠ°ΠΌΠΎΡƒΡ‡ΠΈΡ‚Π΅Π»ΡŒΒ». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 33

Автор АлСксандр Π§ΠΈΡ€Ρ‚ΠΈΠΊ

var elements = []; //Массив, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ скопируСм ссылки Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ страницы

var i;

for (i=0; i<document.all.length; i++)

elements[i] = document.all(i);

Π’ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ 13.3 Π² ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ all содСрТится ΡˆΠ΅ΡΡ‚ΡŒ элСмСнтов, поэтому массив elements послС выполнСния ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠ³ΠΎ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΡˆΠ΅ΡΡ‚ΡŒ элСмСнтов. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΠΊΠ°ΠΊ осущСствляСтся доступ ΠΊ элСмСнтам ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ all: имя ΠΌΠ΅Ρ‚ΠΎΠ΄Π° item() ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ.

Если Π±Ρ‹ доступ ΠΊ элСмСнтам ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ осущСствлялся ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ HTML‑элСмСнтов, Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ ΠΈ Π°Π±Π·Π°Ρ†, ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

var h = document.all(Β«main_partΒ»);

var p = document.all("par1");

Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ прямоС ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ ΠΊ ΠΏΠΎΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ элСмСнтам Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°. ΠŸΡ€ΠΈ использовании этого способа ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠΉ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

var h = main_part;

var p = par1;

ΠšΡ€ΠΎΠΌΠ΅ достаточно Π±ΠΎΠ³Π°Ρ‚ΠΎΠ³ΠΎ Π½Π°Π±ΠΎΡ€Π° свойств, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ write() ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° document для добавлСния ΠΊ HTML‑докумСнту любого тСкста прямо ΠΈΠ· сцСнария. ΠœΠ΅Ρ‚ΠΎΠ΄ write() ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ строку, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒΡΡ любоС HTML‑форматированиС, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

document.write('<H1 id = Β«part2Β»>ВСкст, Π½Π°ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π½Π½Ρ‹ΠΉ сцСнариСм</H1>')

ΠŸΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ этого Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ появляСтся тСкст Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° Π² ΠΎΠΊΠ½Π΅ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°, Π½ΠΎ ΠΈ создаСтся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ с ΠΈΠΌΠ΅Π½Π΅ΠΌ part2, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ с использованиСм Ρ‚ΠΎΠΉ ΠΆΠ΅ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ all.

ИспользованиС ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² open(URI_Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°) ΠΈ close() ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° document позволяСт ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ HTML‑докумСнты ΠΈ Π·Π°ΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ ΠΎΠΊΠ½ΠΎ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° с Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΌ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠΌ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

open(Β«13.1.htmlΒ») //ΠžΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ 13.1 Π² Π½ΠΎΠ²ΠΎΠΌ ΠΎΠΊΠ½Π΅

close(); //ΠŸΡ‹Ρ‚Π°Π΅ΠΌΡΡ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚

Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ элСмСнтами Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°

Π˜Ρ‚Π°ΠΊ, Π²Ρ‹ΡˆΠ΅ рассмотрСно, ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌ, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰ΠΈΠΌ HTML‑элСмСнты Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°. Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΆΠ΅ рассмотрим, ΠΊΠ°ΠΊΠΈΠ΅ ΠΎΠ±Ρ‰ΠΈΠ΅ дСйствия ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒ с ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹ΠΌΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ.

Бвойства, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ доступны для Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° элСмСнтов Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°, ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Ρ‹ Π² Ρ‚Π°Π±Π». 13.3.

Π’Π°Π±Π»ΠΈΡ†Π° 13.3. ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ свойства элСмСнтов Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°

Π’ Ρ‚Π°Π±Π». 13.4 приводятся основныС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для манипулирования Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎΠΌ элСмСнтов Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°.

Π’Π°Π±Π»ΠΈΡ†Π° 13.4. ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ элСмСнтов Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°

Π‘ использованиСм ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹Ρ… Π² Ρ‚Π°Π±Π»ΠΈΡ†Π°Ρ… свойств ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒ практичСски Π»ΡŽΠ±Ρ‹Π΅ манипуляции с Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠΌ, ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΌ Π² ΠΎΠΊΠ½Π΅ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°. БСйчас Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π±ΡƒΠ΄ΡƒΡ‚ рассмотрСны Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ особСнности доступа ΠΊ элСмСнтам Ρ‚Π°Π±Π»ΠΈΡ†: доступ ΠΊ строкам ΠΈ ячСйкам.

ΠžΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΡŽΡŽ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΡŽ rows, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ организовываСтся доступ ΠΊ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌ строкам Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹. Π­Ρ‚ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ insertRow(Π½ΠΎΠΌΠ΅Ρ€) ΠΈ deleteRow(Π½ΠΎΠΌΠ΅Ρ€), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°ΡŽΡ‚ Π² качСствС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° Π½ΠΎΠΌΠ΅Ρ€ строки ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π²ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΈΠ»ΠΈ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ строку Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹. Если ΠΌΠ΅Ρ‚ΠΎΠ΄ insertRow() Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ Π±Π΅Π· ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°, Ρ‚ΠΎ строка Π±ΡƒΠ΄Π΅Ρ‚ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π² ΠΊΠΎΠ½Π΅Ρ† Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹. ΠŸΡ€ΠΈ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠΌ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ строки ΠΌΠ΅Ρ‚ΠΎΠ΄ insertRow Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ссылку Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰ΠΈΠΉ ΡΠΎΠ·Π΄Π°Π½Π½ΡƒΡŽ строку.

ΠšΠ°ΠΆΠ΄Ρ‹ΠΌ элСмСнтом ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ rows являСтся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· свойств ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ являСтся коллСкция cells, содСрТащая ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹, ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ ячСйками Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ элСмСнт ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ cells позволяСт ΠΎΠΏΠ΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΌΠΈ ячСйками Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹. Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ячССк Π² строку Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° insertCell(Π½ΠΎΠΌΠ΅Ρ€) ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ rows. Π£Π΄Π°Π»ΡΡ‚ΡŒ ΠΆΠ΅ ячСйки ΠΌΠΎΠΆΠ½ΠΎ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΌΠ΅Ρ‚ΠΎΠ΄ deleteCell(Π½ΠΎΠΌΠ΅Ρ€) ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Ρ‚ΠΎΠΉ ΠΆΠ΅ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ.

НаконСц, ΠΊΠ°ΠΊ Π·Π°Π²Π΅Ρ€ΡˆΠ°ΡŽΡ‰ΠΈΠΉ этап знакомства с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ document создадим нСсколько страниц, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΡ… Π΅Π³ΠΎ возмоТности.

Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ собой своСобразный ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ. Π˜Π·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΡ вмСстС с тСкстом, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰ΠΈΠΌ ΠΈΡ…, Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΠΎΠΌΠ΅Ρ‰Π΅Π½Ρ‹ Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅. ΠŸΡ€ΠΈ этом ΠΏΠΎΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ (Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ этим управляСт ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ). Π’Π½Π΅ΡˆΠ½ΠΈΠΉ Π²ΠΈΠ΄ страницы ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ Π½Π° рис. 13.1.

Рис. 13.1. ИзмСняСмая страница (ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ)


ΠŸΡ€ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° ΠΊΠΎΠ΄ сцСнария ΠΈ HTML‑код страницы располоТСны Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… Ρ„Π°ΠΉΠ»Π°Ρ…. Π€Π°ΠΉΠ» Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠ΅ имя. Он выглядит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ (ΠΏΡ€ΠΈΠΌΠ΅Ρ€ 13.4).

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 13.4. Π€Π°ΠΉΠ» HTML-Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°

<!DOCTYPE HTML PUBLIC Β«-//W3C//DTD HTML 4.01 Transitional//ENΒ»>

<HTML>

<HEAD>

<TITLE>ΠŸΡ€ΠΈΠΌΠ΅Ρ€ модифицирования Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ сцСнариСм</TITLE>

<SCRIPT type = "text/javascript" src = "script_13_4.js"></SCRIPT>

</HEAD>

<BODY>

<FIELDSET>

<LEGEND>НовоС ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅</LEGEND>

Код: <INPUT name = "txtCode" maxlength = "4" size = "5">

ОписаниС: <INPUT name = "txtName" maxlength = "500">

<BR>ΠŸΡƒΡ‚ΡŒ ΠΊ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΡŽ: <INPUT type = "file" name = "txtFile">

<BR><INPUT type = "button" value = "Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ рисунок"

onClick = "add_image(txtCode.value, txtName.value, txtFile.value)">

<INPUT type = "button" value = "Π£Π΄Π°Π»ΠΈΡ‚ΡŒ рисунок..."

onClick = "delete_image()">

</FIELDSET>

<P>

<TABLE width = "100%" border>

<!β€“ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΡ столбцов таблицы–>

<COL width = "60">

<COL>

<COL width = "130">

<THEAD>

<TR><TH>Код<TH>ОписаниС<TH>ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€

</THEAD>

<TBODY id = "mytable">

<!β€“Π‘ΡŽΠ΄Π° сцСнарий вставляСт записи–>

</TBODY>

</TABLE>

</BODY>

</HTML>


Π’ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° элСмСнт TBODY Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹. ΠŸΡ€ΠΈΡΠ²ΠΎΠΈΠ² Π΅ΠΌΡƒ имя, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Ρ‚Π΅Π»ΠΎΠΌ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ΠΊΠ°ΠΊ с ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ΠΉ. Π­Ρ‚ΠΎ ΠΆΠ΅ справСдливо для THEAD ΠΈ TFOOT. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Ρ‚Π°ΠΊΠΆΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, Π²Π²Π΅Π΄Π΅Π½Π½Ρ‹Ρ… Π² тСкстовыС поля: Π² Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π½Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ getAttribute() ΠΈ setAttribute(), Π° свойствами, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ Ρ‚Π°ΠΊΠΈΠ΅ ΠΆΠ΅ названия, ΠΊΠ°ΠΊ ΠΈ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρ‹.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ Ρ„Π°ΠΉΠ»Π° с ΠΊΠΎΠ΄ΠΎΠΌ сцСнария. Π’ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΎΠ½ ΠΈΠΌΠ΅Π΅Ρ‚ имя script_13_4.js (JS – стандартноС Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ для Ρ„Π°ΠΉΠ»ΠΎΠ² со сцСнариями Π½Π° JavaScript) (ΠΏΡ€ΠΈΠΌΠ΅Ρ€ 13.5).

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 13.5. Π€Π°ΠΉΠ» script_13_4.js

//Ѐункция ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ ΠΊΠΎΠ΄, Π½Π°Π·Π²Π°Π½ΠΈΠ΅, ΠΏΡƒΡ‚ΡŒ изобраТСния ΠΈ добавляСт

//запись Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ function add_image(code, imagename, path){

if (valid_data(code, imagename, path)){

//Π€ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ строки Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ (Π² части TBODY)

var row = mytable.insertRow();

//Π―Ρ‡Π΅ΠΉΠΊΠ° с ΠΊΠΎΠ΄ΠΎΠΌ рисунка row.insertCell().innerHTML = "<B>" + code + "</B>";

//Π―Ρ‡Π΅ΠΉΠΊΠ° с Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ row.insertCell().innerHTML = imagename;

//Π―Ρ‡Π΅ΠΉΠΊΠ° с ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ row.insertCell().innerHTML = '<IMG width = "130" src = "'+ path +'">';

}

}

//Ѐункция провСряСт ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π²Π²Π΅Π΄Π΅Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… function valid_data(code, imagename, path){

//ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ°, Π²Π²Π΅Π΄Π΅Π½Ρ‹ Π»ΠΈ всС значСния if (code == "" || imagename == "" || path == ""){

alert("Π’Π²Π΅Π΄ΠΈΡ‚Π΅ значСния Π²ΠΎ всС поля");

return false;

}

else{

//ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΊΠΎΠ΄ изобраТСния Π½Π΅ дублировался var i;

for (i=0; i<mytable.rows.length; i++){

if (mytable.rows(i).cells(0).innerText == code){

alert("Π˜Π·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ с ΠΊΠΎΠ΄ΠΎΠΌ "+ code +" ΡƒΠΆΠ΅ присутствуСт Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅");

return false;

}

}

}

return true;

}

//Ѐункция удалСния записи ΠΈΠ· Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ (ΠΊΠΎΠ΄ изобраТСния

//Π²Π²ΠΎΠ΄ΠΈΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ)

function delete_image(){

var code = prompt("Π’Π²Π΅Π΄ΠΈΡ‚Π΅ ΠΊΠΎΠ΄ удаляСмого изобраТСния", "");

if (code != null){

//Находим ΠΈ удаляСм запись var i;

for (i=0; i<mytable.rows.length; i++){

if (mytable.rows(i).cells(0).innerText == code){

mytable.deleteRow(i);

return true;

}

}

alert("Π˜Π·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ с ΠΊΠΎΠ΄ΠΎΠΌ " + code + " Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½ΠΎ.");

}

}

Как Π²ΠΈΠ΄Π½ΠΎ, Π² Ρ„Π°ΠΉΠ»Π΅ script_13_4.js Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ Ρ‚Ρ€ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. ΠŸΠ΅Ρ€Π²Π°Ρ функция add_image() ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для добавлСния записСй Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ. ΠŸΠ΅Ρ€Π΅Π΄ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π½ΠΎΠ²ΠΎΠΉ записи ΠΎΠ½Π° провСряСт (с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ valid_data()), Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π±Ρ‹Π»ΠΈ Π²Π²Π΅Π΄Π΅Π½Ρ‹ всС Π΄Π°Π½Π½Ρ‹Π΅ (ΠΊΠΎΠ΄, описаниС ΠΈ ΠΏΡƒΡ‚ΡŒ изобраТСния), Π° Ρ‚Π°ΠΊΠΆΠ΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΊΠΎΠ΄ Π½ΠΎΠ²ΠΎΠ³ΠΎ изобраТСния Π½Π΅ дублировался ΠΊΠΎΠ΄ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ· ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ, Ρ€Π°Π½Π΅Π΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½Ρ‹Ρ… Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ. Π’Ρ€Π΅Ρ‚ΡŒΡ функция delete_image() ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для удалСния записи ΠΈΠ· Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹.

Из ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° 13.5 ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΉ rows ΠΈ cells Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅.

ΠŸΠΎΠΌΠ΅Ρ‰Π°Π΅ΠΌ своС мСню Π½Π° страницу

Рассмотрим Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ довольно Π»ΡŽΠ±ΠΎΠΏΡ‹Ρ‚Π½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ ΠΎΡ„ΠΎΡ€ΠΌΠ»Π΅Π½ΠΈΠ΅ страницы. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, CSS ΠΈ простыС сцСнарии, создадим своС красочноС мСню. Π’ ΠΏΡƒΠ½ΠΊΡ‚Ρ‹ этого мСню ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ малСнькиС изобраТСния. ΠŸΡƒΠ½ΠΊΡ‚Ρ‹ Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΠΎΠ΄ΡΠ²Π΅Ρ‡ΠΈΠ²Π°Ρ‚ΡŒΡΡ ΠΏΡ€ΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ Π½Π° Π½ΠΈΡ… указатСля ΠΌΡ‹ΡˆΠΈ. Π’Π½Π΅ΡˆΠ½ΠΈΠΉ Π²ΠΈΠ΄ мСню прСдставлСн Π½Π° рис. 13.2.

Рис. 13.2. Π’Π½Π΅ΡˆΠ½ΠΈΠΉ Π²ΠΈΠ΄ мСню


НиТС приводится тСкст HTML‑докумСнта с созданным мСню (ΠΏΡ€ΠΈΠΌΠ΅Ρ€ 13.6).

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 13.6. Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ с мСню

<!DOCTYPE HTML PUBLIC Β«-//W3C//DTD HTML 4.01 Frameset//ENΒ»>

<HTML>

<HEAD>

<TITLE>Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° с мСню</TITLE>

<STYLE type = "text/css">

.item {background-color: rgb(170, 170, 170)}

.selected {background-color: magenta}

.menu {border-style: ridge}

</STYLE>

<SCRIPT src = "menu.js" type = "text/javascript"></SCRIPT>

</HEAD>

<BODY>

<TABLE id = "menu1" class = "menu">

<!β€“ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ ΠΏΡƒΠ½ΠΊΡ‚ ΠΌΠ΅Π½ΡŽβ€“>

<TR id = "item1" class = "item" onClick = "item1_click()"

onMouseOver = "item1.className = 'selected'"

onMouseOut = "item1.className = 'item'">

<TD><IMG src = "icons/2.jpg"><TD>ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ ΠΏΡƒΠ½ΠΊΡ‚ мСню

<!–Второй ΠΏΡƒΠ½ΠΊΡ‚ ΠΌΠ΅Π½ΡŽβ€“>

<TR id = "item2" class = "item" onClick = "item2_click()"

onMouseOver = "item2.className = 'selected'"

onMouseOut = "item2.className = 'item'">

<TD><IMG src = "icons/2.jpg"><TD>Π’Ρ‚ΠΎΡ€ΠΎΠΉ ΠΏΡƒΠ½ΠΊΡ‚ мСню

<!–ВрСтий ΠΏΡƒΠ½ΠΊΡ‚ ΠΌΠ΅Π½ΡŽβ€“>

<TR id = "item3" class = "item" onClick = "item3_click()"

onMouseOver = "item3.className = 'selected'"

onMouseOut = "item3.className = 'item'">

<TD><IMG src = "icons/3.jpg"><TD>Π’Ρ€Π΅Ρ‚ΠΈΠΉ ΠΏΡƒΠ½ΠΊΡ‚ мСню

<!–ЧСтвСртый ΠΏΡƒΠ½ΠΊΡ‚ ΠΌΠ΅Π½ΡŽβ€“>

<TR id = "item4" class = "item" onClick = "item4_click()"