You are on page 1of 53

IDZ DO

PRZYKADOWY ROZDZIA
SPIS TRECI

KATALOG KSIEK
KATALOG ONLINE
ZAMW DRUKOWANY KATALOG

Dreamweaver 4. Biblia
Autor: Joseph W. Lowery
Tumaczenie: Piotr Ducher
ISBN: 83-7197-591-0
Tytu oryginau: Dreamweaver 4 Bible
Format: B5, stron: 1036
Zawiera CD-ROM

TWJ KOSZYK
DODAJ DO KOSZYKA

CENNIK I INFORMACJE
ZAMW INFORMACJE
O NOWOCIACH
ZAMW CENNIK

CZYTELNIA
FRAGMENTY KSIEK ONLINE

Dreamweaver jest jednym z najbardziej znanych narzdzi do tworzenia stron WWW.


Tworzenie stron to poczenie sztuki i rzemiosa. Program ten jest doskonaym narzdziem
dla kadego -- zarwno dla profesjonalisty poganianego terminami, jak i dla natchnionego
amatora. Dreamweaver jest nie tylko pierwszym narzdziem umoliwiajcym wizualn
edycj strony, ale take czoowym pod wzgldem atwoci wykorzystania na stronie
skryptw napisanych w JavaScript.
Aby mc w peni wykorzysta wiadomoci zawarte w tej ksice, potrzebujesz dwch
rzeczy -- Dreamweavera i chci tworzenia niebanalnych stron WWW (w zasadzie nie
potrzebujesz Dreamweavera, aby zacz prac -- na doczonym do ksiki CD-ROM-ie
znajdziesz w peni funkcjonaln wersj prbn programu). Dreamweaver uatwia
i przyspiesza prac twrcy stron WWW na kadym jej etapie -- od wykonania projektu do
zarzdzania witryn. Niestety, nawet Dynamiczny HTML, wspaniale zreszt obsugiwany
przez Dreamweavera, nie potrafi poradzi sobie z wszystkimi aspektami nowoczesnej
strony WWW. W tej ksice znajdziesz jednak szczegowe instrukcje dotyczce
rozwizywania niemal kadego zadania zwizanego z tworzeniem strony.
Pod prostym i intuicyjnym interfejsem uytkownika Dreamweavera kryje si
skomplikowany i rozbudowany program uatwiajcy dostp do wszystkich
zaawansowanych narzdzi. Zadaniem tej ksiki jest pomoc w opanowaniu wszystkich
elementw programu. Tworzysz prost stron w edytorze wizualnym? Chcesz rozbudowa
moliwoci programu, tworzc wasne obiekty? Wiadomoci zawarte w tej ksice
umoliwi Ci wykonanie tych zada.

Wydawnictwo Helion
ul. Chopina 6
44-100 Gliwice
tel. (32)230-98-63
e-mail: helion@helion.pl

Dreamweaver jest przeznaczony dla szerokiego krgu projektantw. Poniewa program nie
modyfikuje postaci kodu, moe by wykorzystywany przez weteranw posiadajcych
wasny styl zapisywania kodu. Z racji moliwoci automatyzacji wielu czynnoci program
zainteresuje rwnie pocztkujcych projektantw. Ta ksika przeznaczona jest dla
wszystkich -- od pocztkujcych projektantw, szukajcych podstawowych informacji,
do profesjonalistw poszukujcych nowych sposobw rozwizywania problemw
wystpujcych przy projektowaniu. Co wicej ksika ta jest doskonaym podrcznikiem
i rdem informacji dla kadego, kto na co dzie korzysta z Dreamweavera.
Jeli przeczytasz t ksik od pocztku do koca, staniesz si zaawansowanym
uytkownikiem Dreamweavera. Moesz jednak wykorzystywa tylko niektre informacje
w niej zawarte, potrzebne przy wykonywaniu okrelonych czynnoci. Aby uatwi takie
korzystanie z ksiki, zostaa ona podzielona na osiem czci powiconych rnym
zagadnieniom. Moesz rwnie wykorzystywa t ksik jako rdo wiedzy podczas
pracy z Dreamweaverem.

O Autorze ..............................................................................................................................................23
Sowo wstpne .......................................................................................................................................25
Wstp .....................................................................................................................................................27
 
  
 
Rozdzia 1. Czym jest Dreamweaver?...................................................................................................39
Rozdzia 2. Szybki start .........................................................................................................................61
Rozdzia 3. Przegld podstawowych funkcji Dreamweavera................................................................75
Rozdzia 4. Definiowanie preferencji ..................................................................................................135
Rozdzia 5. Korzystanie z systemu pomocy ........................................................................................179
Rozdzia 6. Definiowanie pierwszej witryny ......................................................................................195
Rozdzia 7. Publikowanie i zarzdzanie witryn.................................................................................213
      !"  #$%
Rozdzia 8. Podstawy jzyka HTML...................................................................................................243
Rozdzia 9. Tekst na stronie WWW ....................................................................................................271
Rozdzia 10. Umieszczanie grafiki na stronach WWW ......................................................................319
Rozdzia 11. cza ..............................................................................................................................347
Rozdzia 12. Tworzenie list .................................................................................................................361
&        
Rozdzia 13. Tworzenie tabel ..............................................................................................................379
Rozdzia 14. Mapy obrazkw interpretowane po stronie przegldarki ...............................................417
Rozdzia 15. Formularze......................................................................................................................433
Rozdzia 16. Ramki .............................................................................................................................453
'  ( )(  (  
 *!"  $
Rozdzia 17. Uruchamianie zewntrznych programw.......................................................................479
Rozdzia 18. Wykorzystywanie i tworzenie obiektw ........................................................................501
Rozdzia 19. Praca z behawiorami.......................................................................................................525
Rozdzia 20. Tworzenie behawiorw ..................................................................................................567
Rozdzia 21. Dostosowywanie Dreamweavera do wasnych wymaga..............................................601
'+  ,((  -$
Rozdzia 22. Integracja Dreamweavera z programem Fireworks .......................................................645
Rozdzia 23. Wstawianie filmw Shockwave i Flash na stron WWW..............................................665
Rozdzia 24. Wstawianie sekwencji wideo na stron WWW..............................................................705
Rozdzia 25. Wykorzystanie dwiku na stronie WWW ....................................................................729

!"$.(/(

'! (   !"  01


Rozdzia 26. Czym jest Dynamiczny HTML? ....................................................................................761
Rozdzia 27. Tworzenie stron WWW z wykorzystaniem arkuszy stylw ..........................................775
Rozdzia 28. Warstwy..........................................................................................................................801
Rozdzia 29. Animowanie warstw za pomoc narzdzia Timelines ...................................................835
'  (   2  ,!"  301
Rozdzia 30. Jzyk XML .....................................................................................................................861
Rozdzia 31. Tworzenie aktywnych witryn WWW.............................................................................869
'&* (( *(
   (  33%
Rozdzia 32. Szablony .........................................................................................................................883
Rozdzia 33. Wykorzystanie bibliotek.................................................................................................899
Rozdzia 34. Projektowanie stron zgodnych z rnymi przegldarkami ............................................913
Rozdzia 35. Tworzenie witryn w zespole...........................................................................................933
! (  101
Dodatek A Opis zawartoci pyty CD .................................................................................................961
Dodatek B Podstawy obsugi edytora BBEdit 6.0.2............................................................................967
Dodatek C Podstawy obsugi edytora HomeSite 4.5...........................................................................993
Dodatek D CourseBuilder .................................................................................................................1017
Skorowidz ..........................................................................................................................................1029

4
( (

56,  #


47  
 #0
8
#

 
  
   
 (7% !"9 1
wiat Dreamweavera .............................................................................................................................39
Integracja edytorw wizualnych i tekstowych ................................................................................40
Opcja Roundtrip HTML..................................................................................................................41
Narzdzia suce do zarzdzania witrynami..................................................................................41
Tworzenie witryny w zespole..........................................................................................................41
Interfejs uytkownika ............................................................................................................................42
atwe wprowadzanie tekstu ............................................................................................................42
Szybka modyfikacja obiektw ........................................................................................................43
Dostp do zasobw..........................................................................................................................43
W peni konfigurowalne rodowisko pracy.....................................................................................43
Skrty klawiaturowe........................................................................................................................44
atwe zaznaczanie obiektw i elementw strony ...........................................................................44
Opcje komponowania wygldu strony ............................................................................................44
Aktywny podgld ............................................................................................................................45
Rozbudowane wyszukiwanie i zastpowanie..................................................................................46
Zgodno z aktualnymi standardami HTML.........................................................................................46
Edycja tekstu i grafiki......................................................................................................................46
Moliwoci edycji tabel...................................................................................................................47
atwe tworzenie formularzy ...........................................................................................................48
atwe definiowanie ramek ..............................................................................................................48
Rozszerzenia multimedialne............................................................................................................48
Nowoczesne moliwoci .......................................................................................................................49
Warstwy ..........................................................................................................................................49
Obiekty animowane.........................................................................................................................49
Dynamiczne uaktualnianie stylw...................................................................................................50
Behawiory JavaScript......................................................................................................................51
Integracja z programami Flash i Fireworks.....................................................................................51
Funkcja Roundtrip XML .................................................................................................................52
Rozszerzalno programu......................................................................................................................53
Obiekty i behawiory ........................................................................................................................53
Polecenia i okna dialogowe.............................................................................................................54
Wasne znaczniki, filtry i okna kontrolne .......................................................................................54

!"$.(/(

Automatyzacja pracy .............................................................................................................................54


Przypisywanie stylw......................................................................................................................55
Import dokumentw z MS Office ...................................................................................................55
Paleta Reference ..............................................................................................................................55
Paleta History ..................................................................................................................................56
Narzdzia do zarzdzania witryn .........................................................................................................56
Biblioteki obiektw .........................................................................................................................56
Szablony ..........................................................................................................................................57
Testowanie kompatybilnoci stron z przegldarkami .....................................................................57
Konwertowanie stron WWW ..........................................................................................................58
Weryfikacja czy............................................................................................................................58
Publikacja witryny za pomoc klienta FTP.....................................................................................58
Mapa witryny ..................................................................................................................................59
Blokowanie plikw..........................................................................................................................59
Podsumowanie.......................................................................................................................................60
 (7#4 /( -%
Definiowanie witryny ............................................................................................................................61
Tworzenie strony gwnej .....................................................................................................................63
Rozpoczynamy od nagwka...........................................................................................................64
Okrelanie kolorw strony ..............................................................................................................65
Wstpny projekt ..............................................................................................................................66
Dodawanie tekstu dostarczonego przez klienta.....................................................................................68
Oywianie strony ...................................................................................................................................70
Testowanie i publikowanie strony .........................................................................................................72
Podsumowanie.......................................................................................................................................74
 (72*
  :;,  (!" 0
Okno dokumentu ...................................................................................................................................75
Listwa statusowa....................................................................................................................................76
Selektor znacznikw........................................................................................................................77
Menu wyboru wielkoci okna .........................................................................................................77
Wskanik czasu pobierania strony ..................................................................................................80
Paleta Launcher ...............................................................................................................................81
Korzystanie z paska narzdziowego......................................................................................................81
Przycisk File Management ..............................................................................................................82
Przycisk Preview/Debug in Browser...............................................................................................83
Przyciski Refresh i Reference .........................................................................................................83
Przycisk Code Navigation ...............................................................................................................84
Przycisk View Options....................................................................................................................84
Paleta Objects ........................................................................................................................................85
Obiekty kategorii Common .............................................................................................................86
Obiekty kategorii Characters...........................................................................................................88
Obiekty kategorii Forms..................................................................................................................88
Obiekty kategorii Frames ................................................................................................................90
Obiekty kategorii Head ...................................................................................................................91
Obiekty kategorii Invisibles ............................................................................................................91
Obiekty kategorii Special ................................................................................................................92
Moliwoci inspektora Property ............................................................................................................93
Praca z inspektorem Property..........................................................................................................93
Elementy inspektora Property .........................................................................................................94

4
( (

Paleta Launcher .....................................................................................................................................96


Okno Site.........................................................................................................................................97
Paleta Assets....................................................................................................................................98
Paleta HTML Styles ......................................................................................................................103
Paleta CSS Styles ..........................................................................................................................104
Paleta Behaviors ............................................................................................................................105
Paleta History ................................................................................................................................106
Inspektor Code ..............................................................................................................................107
Konfiguracja ekranu roboczego...........................................................................................................108
Struktura menu ....................................................................................................................................109
Menu File ......................................................................................................................................109
Menu Edit ......................................................................................................................................109
Menu View ....................................................................................................................................109
Menu Insert ...................................................................................................................................116
Menu Modify.................................................................................................................................118
Menu Text .....................................................................................................................................118
Menu Commands ..........................................................................................................................125
Menu Site ......................................................................................................................................127
Menu Window...............................................................................................................................130
Menu Help.....................................................................................................................................130
Podsumowanie.....................................................................................................................................132
 (7$!;( (  (
; (  %0
Konfigurowanie rodowiska pracy ......................................................................................................135
Kategoria General..........................................................................................................................136
Kategoria Invisible Elements ........................................................................................................140
Kategoria Panels............................................................................................................................142
Kategoria Highlighting..................................................................................................................143
Kategoria Quick Tag Editor ..........................................................................................................144
Kategoria Status Bar......................................................................................................................145
Kategoria File Types/Editors.........................................................................................................147
Zaawansowane opcje ...........................................................................................................................150
Kategoria Layout View .................................................................................................................151
Kategoria Layers ...........................................................................................................................152
Kategoria CSS Styles ....................................................................................................................155
Preferencje dotyczce poczenia z serwerem.......................................................................................156
Kategoria Site ................................................................................................................................156
Kategoria Preview in Browser ......................................................................................................158
Formatowanie kodu rdowego strony ..............................................................................................159
Kategoria Fonts/Encoding.............................................................................................................159
Kategoria Code Rewriting.............................................................................................................161
Kategoria Code Colors ..................................................................................................................163
Kategoria Code Format .................................................................................................................164
Specyfikacja formatowania kodu rdowego ..............................................................................167
Modyfikowanie pliku SourceFormat.txt .......................................................................................176
Podsumowanie.....................................................................................................................................177



!"$.(/(

 (70<   ( ,


  %1
Nawigacja w systemie pomocy ...........................................................................................................180
Przegldanie tematw pomocy......................................................................................................181
Przyciski nawigacyjne...................................................................................................................181
Wykorzystanie alfabetycznego spisu tematw..............................................................................181
Wyszukiwanie okrelonego zagadnienia.......................................................................................183
Korzystanie z samouczka ....................................................................................................................184
Animowany przewodnik po programie ...............................................................................................184
Panel Reference ...................................................................................................................................188
Pomoc w sieci ......................................................................................................................................190
Dreamweaver Support Center .......................................................................................................191
Dynamic HTML Zone...................................................................................................................191
Podsumowanie.....................................................................................................................................193
 (7-!;( (  (
((  %10
Planowanie witryny .............................................................................................................................196
Podstawowe zaoenia...................................................................................................................196
Projekt ...........................................................................................................................................197
Definiowanie witryny ..........................................................................................................................199
Definiowanie pocze lokalnych .................................................................................................200
Definiowanie witryny na serwerze................................................................................................202
Modyfikowanie informacji o witrynie.................................................................................................205
Tworzenie i zapisywanie stron ............................................................................................................205
Uruchamianie Dreamweavera .......................................................................................................205
Otwieranie istniejcego dokumentu ..............................................................................................206
Otwieranie nowego okna...............................................................................................................207
Otwieranie nowej strony ...............................................................................................................207
Zapisywanie strony........................................................................................................................208
Zamykanie strony ..........................................................................................................................208
Zamykanie programu ....................................................................................................................208
Przegldanie tworzonych stron............................................................................................................209
Publikowanie strony ............................................................................................................................210
Podsumowanie.....................................................................................................................................212
 (7,/(  ((* (( *  #%
Zarzdzanie witryn za pomoc Dreamweavera .................................................................................214
Definiowanie nowej witryny ...............................................................................................................215
Kategoria Local Info .....................................................................................................................215
Kategoria Remote Info ..................................................................................................................216
Kategoria Design Notes.................................................................................................................219
Kategoria Site Map Layout ...........................................................................................................220
Kategoria File View Columns.......................................................................................................221
Praca w oknie Site ...............................................................................................................................223
Panele Remote Site i Local Folder ................................................................................................224
Przycisk Connect/Disconnect........................................................................................................224
Przycisk Get i Put ..........................................................................................................................224
Przycisk Refresh............................................................................................................................225
Przycisk Stop Current task ............................................................................................................226
Przyciski Check Out/Check In ......................................................................................................226
Blokowanie plikw..............................................................................................................................226
Synchronizowanie zawartoci katalogw............................................................................................227

4
( (



Sprawdzanie poprawnoci czy..........................................................................................................229


Zewntrzne edytory .............................................................................................................................231
Mapa witryny.......................................................................................................................................231
Projektowanie witryny za pomoc narzdzia Site Map ................................................................233
Modyfikowanie stron na mapie witryny .......................................................................................237
Wywietlanie mapy witryny..........................................................................................................237
Podsumowanie.....................................................................................................................................240

     


!"  #$%
 (73     #$
Struktura dokumentu HTML ...............................................................................................................243
Definiowanie elementw sekcji <head>..............................................................................................245
Okrelanie waciwoci strony ......................................................................................................245
Wybr palety kolorw wykorzystywanej na stronie.....................................................................247
Znaczniki sekcji <head>................................................................................................................248
Sekcja <body> .....................................................................................................................................255
Style logiczne ................................................................................................................................256
Style fizyczne ................................................................................................................................257
Inspektor Code i okno podgldu Code View.......................................................................................257
Szybkie modyfikacje znacznikw za pomoc edytora Quick Tag ......................................................261
Tryb Insert HTML.........................................................................................................................262
Tryb Wrap Tag ..............................................................................................................................263
Tryb Edit HTML ...........................................................................................................................265
Wstawianie symboli i znakw specjalnych .........................................................................................267
Symbole nazwane..........................................................................................................................267
Symbole dziesitne........................................................................................................................268
Obiekty z kategorii Characters ......................................................................................................268
Podsumowanie.....................................................................................................................................269
 (71  (888  #%
Rozpocznij od nagwkw ..................................................................................................................271
Akapity tekstu......................................................................................................................................273
Edycja akapitw tekstu..................................................................................................................274
Wyszukiwanie i zastpowanie fragmentw tekstu........................................................................280
Znacznik <br> ...............................................................................................................................292
Inne znaczniki regulujce odstpy na stronie................................................................................293
Importowanie kodu HTML wygenerowanego w programie Word.....................................................294
Formatowanie tekstu............................................................................................................................297
Tekst preformatowany...................................................................................................................297
Porwnanie stylw ........................................................................................................................298
Wykorzystanie znacznika <address> ............................................................................................299
Style HTML.........................................................................................................................................301
Przypisywanie stylw HTML .......................................................................................................301
Usuwanie formatowania wprowadzanego przez style HTML ......................................................302
Definiowanie stylw HTML .........................................................................................................304
Modyfikowanie formatowania tekstu ..................................................................................................305
Zmiana wielkoci czcionki............................................................................................................305
Rozmiar bezwzgldny ...................................................................................................................306
Rozmiar wzgldny.........................................................................................................................307



!"$.(/(

Zmiana koloru czcionki.................................................................................................................308


Okrelanie kroju czcionki..............................................................................................................311
Wyrwnywanie tekstu...................................................................................................................313
Wcicia akapitowe ........................................................................................................................314
Wstawianie dat ....................................................................................................................................314
Wstawianie komentarzy do kodu ........................................................................................................316
Podsumowanie.....................................................................................................................................317
 (7%=>(  (2;((   :888  %1
Formaty graficzne wykorzystywane na stronach WWW ....................................................................320
Format GIF ....................................................................................................................................320
Format JPEG .................................................................................................................................322
Format PNG ..................................................................................................................................322
Praca z obrazkami................................................................................................................................323
Umieszczanie grafiki na stronie ....................................................................................................323
Przeciganie obrazw z palety Assets...........................................................................................326
Modyfikowanie obrazkw.............................................................................................................327
Wyrwnywanie obrazkw wzgldem tekstu i dokumentu............................................................331
Umieszczanie grafiki w tle strony .......................................................................................................334
Dzielenie strony za pomoc linii poziomych ......................................................................................335
Proste animacje....................................................................................................................................337
Zastosowanie praktyczne banery reklamowe .................................................................................339
Rollovery .............................................................................................................................................341
Paski nawigacyjne ...............................................................................................................................342
Podsumowanie.....................................................................................................................................345
 (7%%?*   $
Wszystko o adresach URL ..................................................................................................................347
Hipertext ..............................................................................................................................................348
Wstawianie adresw URL z palety Assets....................................................................................351
Wskazywanie plikw ....................................................................................................................352
Typy adresw ................................................................................................................................353
Wstawianie cza do poczty elektronicznej.........................................................................................353
Nawigacja w obrbie dokumentu za pomoc odnonikw .................................................................354
Przemieszczanie si w obrbie jednego dokumentu .....................................................................355
cza do odnonikw znajdujcych si na innych stronach .........................................................357
Otwieranie czy w okrelonych ramkach lub oknach ........................................................................357
Podsumowanie.....................................................................................................................................358
 (7%#  (( -%
Listy wypunktowane............................................................................................................................361
Edycja list wypunktowanych.........................................................................................................362
Znaczniki list .................................................................................................................................363
Inne znaki wypunktowania............................................................................................................363
Tworzenie list numerowanych.............................................................................................................366
Edycja list numerowanych ............................................................................................................367
Inne style numerowania.................................................................................................................368
Listy definicji.......................................................................................................................................369
Listy zagniedone ..............................................................................................................................370
Specjalne typy list................................................................................................................................371
Listy menu.....................................................................................................................................372

4
( (



Listy-spisy .....................................................................................................................................372
Zastosowanie praktyczne graficzne symbole wypunktowania.......................................................373
Podsumowanie.....................................................................................................................................376

&        


 (7%  (/ 1
Podstawowe wiadomoci o tworzeniu tabel w jzyku HTML ............................................................380
Rzdy.............................................................................................................................................380
Komrki ........................................................................................................................................381
Nagwki rzdw i kolumn ...........................................................................................................381
Tworzenie tabel w Dreamweaverze.....................................................................................................381
Preferencje tabel ..................................................................................................................................383
Modyfikowanie tabel ...........................................................................................................................384
Zaznaczanie elementw tabeli.......................................................................................................384
Edycja zawartoci tabeli................................................................................................................387
Modyfikowanie parametrw tabeli ...............................................................................................390
Waciwoci komrek, kolumn i rzdw ......................................................................................399
Formatowanie tabeli ............................................................................................................................402
Sortowanie zawartoci tabel ................................................................................................................404
Importowanie danych tabelarycznych .................................................................................................405
Projektowanie w trybie Layout............................................................................................................406
Rysowanie komrek i tabel ...........................................................................................................408
Modyfikowanie ukadu strony.......................................................................................................410
Podsumowanie.....................................................................................................................................416
 (7%$
 /@( 
  
 (
2*(  $%
Mapy obrazkw interpretowane po stronie przegldarki ....................................................................417
Tworzenie obszarw aktywnych .........................................................................................................419
Narzdzia rysunkowe ....................................................................................................................420
Modyfikowanie mapy obrazka......................................................................................................422
Konwertowanie map interpretowanych po stronie przegldarki
na mapy interpretowane po stronie serwera.......................................................................................423
Adaptacja skryptu..........................................................................................................................423
Wstawianie cza...........................................................................................................................424
Zastosowanie praktyczne mapa obrazkw z rolloverami...............................................................425
Krok 1. Utwrz dwa obrazki .........................................................................................................425
Krok 2. Skonfiguruj warstwy ........................................................................................................426
Krok 3. Zdefiniuj map .................................................................................................................428
Krok 4. Przycz behawiory ..........................................................................................................428
Krok 5. Wykadruj warstwy ...........................................................................................................430
Podsumowanie.....................................................................................................................................432
 (7%0A , $
Jak dziaa formularz w jzyku HTML? ...............................................................................................433
Tworzenie formularza w Dreamweaverze...........................................................................................435
Pola tekstowe .......................................................................................................................................436
Pola jednowierszowe.....................................................................................................................437
Pola hasa.......................................................................................................................................438
Pola wielowierszowe.....................................................................................................................438
Pola wyboru i przyciski opcji ..............................................................................................................439

!"$.(/(

Pola wyboru...................................................................................................................................440
Przyciski opcji ...............................................................................................................................441
Listy i menu .........................................................................................................................................442
Rozwijane menu ............................................................................................................................442
Listy opcji......................................................................................................................................444
Menu skokw ......................................................................................................................................445
Modyfikowanie menu skokw ......................................................................................................447
Przycisk Go ...................................................................................................................................449
Przyciski w formularzach ....................................................................................................................449
Przyciski Submit, Reset i Command.............................................................................................449
Przyciski graficzne ........................................................................................................................450
Ukryte pola i pola plikw ....................................................................................................................451
Ukryte pole ....................................................................................................................................451
Pole pliku.......................................................................................................................................452
Podsumowanie.....................................................................................................................................452
 (7%-(  $0
Ramki i zestawy ramek........................................................................................................................454
Kolumny i rzdy............................................................................................................................454
Skalowanie ramek .........................................................................................................................454
Tworzenie ramek .................................................................................................................................455
Dodawanie kolejnych ramek .........................................................................................................456
Modyfikacje ramek za pomoc polece z menu ...........................................................................456
Modyfikacje ramek za pomoc myszki.........................................................................................457
Tworzenie zestaww ramek za pomoc obiektw ..............................................................................457
Inspektor Property dla zestawu ramek.................................................................................................460
Zmiana wielkoci ramek ...............................................................................................................461
Modyfikacje krawdzi ramek........................................................................................................462
Zapisywanie zestaww ramek i ramek pojedynczych ..................................................................463
Zamykanie dokumentu z ramkami ................................................................................................463
Modyfikowanie pojedynczych ramek .................................................................................................463
Okno dialogowe Page Properties ..................................................................................................464
Modyfikacje w inspektorze Property ............................................................................................465
Modyfikowanie zawartoci ramek ................................................................................................468
Usuwanie ramek ............................................................................................................................469
Otwieranie dokumentw w okrelonych ramkach ..............................................................................469
Elementy zestawu ramek...............................................................................................................469
Okrelone ramki w zestawie..........................................................................................................470
Jednoczesne adowanie dokumentw do dwch lub wicej ramek ..............................................471
Przegldarki nie obsugujce ramek ....................................................................................................472
Ramki typu iframe ...............................................................................................................................473
Podsumowanie.....................................................................................................................................474

'  ( )(  ( 



 *!" $
 (7%>, :( (  :
 2@  $1
Skrypty CGI.........................................................................................................................................480
Tworzenie i wywoywanie skryptw ............................................................................................480
Okrelanie praw dostpu do pliku w Dreamweaverze ..................................................................481
Wysyanie danych do skryptw CGI.............................................................................................482

4
( (

Procedury plugin..................................................................................................................................486
Osadzanie procedury na stronie i definiowanie parametrw procedury .......................................487
Uruchamianie procedur plugin......................................................................................................489
Wykrywanie obecnoci procedur w systemie ...............................................................................490
Kontrolki ActiveX ...............................................................................................................................491
Wstawianie kontrolki ActiveX na stron ......................................................................................492
czenie kontrolek ActiveX i procedur plugin .............................................................................494
Aplety Javy ..........................................................................................................................................494
JavaScript i VBScript ..........................................................................................................................496
Wstawianie skryptu na stron........................................................................................................497
Podsumowanie.....................................................................................................................................498
 (7%38     ((  ( /(@  0=%
Wstawianie obiektw na stron ...........................................................................................................502
Modyfikowanie palety Objects............................................................................................................503
Przesuwanie i zmiana ksztatu palety............................................................................................503
Zmiana ukadu obiektw i dodawanie palet..................................................................................504
Dodawanie nowych obiektw .............................................................................................................504
Tworzenie wasnych obiektw ............................................................................................................507
Tworzenie prostych obiektw .......................................................................................................507
Tworzenie przycisku dla obiektu ..................................................................................................511
Wykorzystywanie JavaScriptu w tworzonych obiektach ....................................................................511
Wykorzystanie funkcji objectTag()...............................................................................................512
System pomocy dla obiektu ..........................................................................................................513
Formularz do wpisywania parametrw obiektu ............................................................................514
Elementy formularza .....................................................................................................................516
Dodawanie grafiki do obiektw ....................................................................................................522
Warstwy i filmy Flash w obiektach...............................................................................................523
Podsumowanie.....................................................................................................................................524
 (7%1 /:( (  0#0
Behawiory, zdarzenia i akcje...............................................................................................................525
Doczanie behawiora..........................................................................................................................526
Paleta Behaviors ............................................................................................................................527
Doczanie behawiora ...................................................................................................................528
Zarzdzanie zdarzeniami...............................................................................................................529
Standardowe akcje.........................................................................................................................532
Zarzdzanie behawiorami i modyfikowanie ich parametrw..............................................................563
Zmiana parametrw behawiora .....................................................................................................564
Ukadanie behawiorw w sekwencje ............................................................................................564
Usuwanie behawiorw z listy........................................................................................................565
Podsumowanie.....................................................................................................................................565
 (7#=  (/:( @ 0-
Tworzenie behawiora od podstaw .......................................................................................................567
Etap 1. Zdefiniuj behawior............................................................................................................568
Etap 2. Stwrz plik akcji ...............................................................................................................569
Etap 3. Stwrz interfejs uytkownika............................................................................................571
Etap 4. Docz behawior do znacznika .........................................................................................573
Etap 5. Zbadaj behawior................................................................................................................574
Etap 6. Przetestuj behawior ...........................................................................................................575



!"$.(/(

Usuwanie bdw z behawiora......................................................................................................576


Dokumentacja Extending Dreamweaver .............................................................................................577
Obiektowy model dokumentu .......................................................................................................577
Rozszerzenia API Dreamweavera .................................................................................................579
API dla behawiorw......................................................................................................................594
Inne uyteczne funkcje ........................................................................................................................597
Techniki tworzenia behawiorw .........................................................................................................597
Okrelanie zdarzenia .....................................................................................................................597
Zwracanie wartoci........................................................................................................................599
Funkcje zwracajce wywoania innych funkcji.............................................................................599
Podsumowanie.....................................................................................................................................600
 (7#%!     (!" 7 : 2B  -=%
Dodawanie nowych polece ................................................................................................................602
Podstawowe wiadomoci o poleceniach .......................................................................................603
Nagrywanie i powtarzanie polece ...............................................................................................606
Pisanie polece ..............................................................................................................................608
Zastosowanie praktyczne funkcje przydatne przy tworzeniu polece .....................................610
Menu i skrty klawiaturowe ................................................................................................................615
Zarzdzanie poleceniami utworzonymi w palecie History ...........................................................617
Edytor skrtw klawiaturowych Keyboard Shortcuts..............................................................617
Modyfikowanie pliku menus.xml..................................................................................................620
Tworzenie polece menu...............................................................................................................624
Wykorzystywanie niestandardowych znacznikw ..............................................................................625
Tworzenie inspektorw Property.........................................................................................................628
Kod rdowy inspektora Property................................................................................................629
Projektowanie inspektora Property ...............................................................................................632
Tworzenie wasnych palet pywajcych ..............................................................................................633
Tworzenie filtrw ................................................................................................................................635
Funkcje wykorzystywane w filtrach..............................................................................................636
Blokowanie kodu...........................................................................................................................638
Dodatkowe komponenty......................................................................................................................639
Wywoywanie komponentu...........................................................................................................639
Tworzenie komponentw ..............................................................................................................641
Podsumowanie.....................................................................................................................................642

'+  ,((   -$


 (7## 2 !"
 2A(   -$0
atwa modyfikacja elementw graficznych........................................................................................646
Optymalizacja obrazka w Fireworks.............................................................................................647
Edycja obrazka w Fireworks .........................................................................................................649
Wstawianie rollowerw .......................................................................................................................651
Wykorzystanie behawiorw Dreamweavera.................................................................................652
Wykorzystanie kodu wygenerowanego przez Fireworks..............................................................654
Modyfikowanie obrazkw podzielonych na fragmenty................................................................657
Kontrolowanie Fireworks z poziomu Dreamweavera .........................................................................658
Galeria fotografii ...........................................................................................................................658
Tworzenie rozszerze czcych Dreamweavera i Fireworks.........................................................660
Podsumowanie.....................................................................................................................................663

4
( (



 (7#8( (;(@4: "(A:  888  --0


Shockwave i Flash podobiestwa i rnice......................................................................................666
Doczanie filmw Shockwave do dokumentw Dreamweavera .......................................................668
Parametry filmu Shockwave................................................................................................................670
Dodatkowe parametry filmw Shockwave ...................................................................................672
Automatyczne ustawienia dla plikw Shockwave ........................................................................672
Okrelanie parametrw filmu Flash ....................................................................................................673
Skalowanie filmw Flash ..............................................................................................................674
Dodatkowe parametry filmw Flash .............................................................................................674
Tworzenie przyciskw Flash i edycja szablonw ...............................................................................675
Obiekty Flash Text ..............................................................................................................................679
Konfiguracja typw MIME na serwerze .............................................................................................682
Wstawianie obiektw Generatora........................................................................................................682
Wykorzystywanie czy z filmw Flash w Dreamweaverze...............................................................683
Interakcja z uytkownikiem za pomoc filmw Shockwave ..............................................................685
Zastosowanie praktyczne elementy kontrolujce odtwarzanie filmu Shockwave ...................685
Zastosowanie praktyczne odtwarzanie filmw Shockwave w ramkach ..................................686
Zastosowanie praktyczne uruchamianie behawiorw z poziomu filmw Flash......................689
Zastosowanie praktyczne wykorzystanie pakietu JavaScript Integration Kit for Flash ........................692
Macromedia Flash Player Controls ...............................................................................................692
Advanced Form Validations..........................................................................................................696
Browser Scripts for Flash ..............................................................................................................701
Flash Dispatcher Behavior ............................................................................................................701
Podsumowanie.....................................................................................................................................704
 (7#$8( ( ((   888 =0
Wideo w sieci ......................................................................................................................................705
Wielka trjka formatw wideo ........................................................................................................706
RealMedia .....................................................................................................................................706
QuickTime.....................................................................................................................................708
Windows Media ............................................................................................................................709
Praca z klipami wideo..........................................................................................................................710
cze do pliku wideo ....................................................................................................................712
Osadzanie plikw wideo na stronie...............................................................................................712
Odtwarzanie klipw wideo w Dreamweaverze.....................................................................................713
Wstawianie na stron filmw QuickTime ...........................................................................................714
Wersje QuickTime ........................................................................................................................716
Odtwarzanie filmw QuickTime VR ............................................................................................719
Odtwarzanie strumieniowe plikw RealMedia ...................................................................................721
Osadzanie plikw RealMedia........................................................................................................721
Obiekty RealSystem G2 ................................................................................................................723
Podsumowanie.....................................................................................................................................727
 (7#08    (C(,  (888  #1
Podstawowe wiadomoci o dwiku cyfrowym ...................................................................................730
Formaty zapisu plikw ..................................................................................................................730
Redukcja rozmiaru plikw dwikowych .....................................................................................730
Pliki muzyczne ....................................................................................................................................733
Podstawowe wiadomoci o formacie MP3..........................................................................................734
Odtwarzacze MP3 .........................................................................................................................734
Kodowanie MP3............................................................................................................................735



!"$.(/(

cza do plikw dwikowych ...........................................................................................................735


Osadzanie na stronie dwikw i muzyki ...........................................................................................736
Odtwarzanie muzyki w tle ...................................................................................................................737
Uruchamianie okrelonych odtwarzaczy.............................................................................................738
Windows Media Player .................................................................................................................739
Kontrolka ActiveX Windows Media Player .................................................................................739
Wykorzystanie znacznika <embed> w poczeniu z ActiveX ........................................................740
Procedura plugin LiveAudio .........................................................................................................741
Osadzanie na stronie dwiku odtwarzanego strumieniowo ...............................................................743
Wykorzystanie obiektu RealAudio ...............................................................................................743
Parametry procedury plugin RealAudio........................................................................................744
Udwikowienie strony za pomoc odtwarzacza Beatnik ActionSet Pro.................................................744
Tworzenie plikw RMF ................................................................................................................745
Instalowanie behawiorw Beatnik ActionSet Pro.........................................................................745
Praca z Beatnik ActionSet Pro ......................................................................................................746
Osadzanie obiektu Beatnik w dokumencie ...................................................................................756
Podsumowanie.....................................................................................................................................757

'! (   !"  ./


 (7#- ! (   9  -%
Podstawowe wiadomoci o Dynamicznym HTML-u .........................................................................762
Kaskadowe arkusze stylw ...........................................................................................................763
Pozycjonowanie bezwzgldne.......................................................................................................763
Dynamiczna zawarto..................................................................................................................764
Czcionki osadzone na stronie ........................................................................................................764
Poczenie z bazami danych..........................................................................................................765
DHTML w przegldarkach Netscape ..................................................................................................766
Tworzenie arkuszy stylw.............................................................................................................766
Pozycjonowanie zawartoci ..........................................................................................................767
Czcionki osadzane w dokumencie ................................................................................................768
DHTML w przegldarce Internet Explorer .........................................................................................770
Dynamiczna zawarto..................................................................................................................771
Filtry i przejcia.............................................................................................................................771
Tworzenie pocze z bazami danych...........................................................................................772
Podsumowanie.....................................................................................................................................773
 (7#  ( 888    (,  @ 0
Podstawowe wiadomoci o kaskadowych arkuszach stylw ..............................................................776
Grupowanie waciwoci...............................................................................................................776
Dziedziczenie stylw.....................................................................................................................777
Priorytety stylw ...........................................................................................................................777
Definiowanie nowych klas ............................................................................................................778
Sposoby przypisywania stylw .....................................................................................................778
Tworzenie i przypisywanie arkusza stylw w Dreamweaverze ..........................................................780
Zastosowanie praktyczne usuwanie podkrele z czy...........................................................780
Wykorzystanie palety CSS Styles .................................................................................................781
Doczanie zewntrznego arkusza stylw.....................................................................................782
Dodawanie, zmienianie i usuwanie stylu ......................................................................................782
Definiowanie nowych stylw........................................................................................................785
Edycja arkuszy stylw...................................................................................................................787
Importowanie zewntrznego arkusza stylw ................................................................................787

4
( (



Style i ich atrybuty...............................................................................................................................788


Kategoria Type ..............................................................................................................................789
Kategoria Background...................................................................................................................789
Kategoria Block.............................................................................................................................791
Kategoria Box................................................................................................................................792
Kategoria Border ...........................................................................................................................793
Kategoria List ................................................................................................................................794
Kategoria Positioning ....................................................................................................................795
Kategoria Extensions.....................................................................................................................795
Podsumowanie.....................................................................................................................................799
 (7#38  3=%
Podstawowe wiadomoci o warstwach................................................................................................802
Tworzenie warstw w Dreamweaverze.................................................................................................803
Wykorzystanie obiektu Layer .......................................................................................................804
Polecenie InsertLayer ................................................................................................................805
Okrelanie domylnych parametrw warstwy ..............................................................................805
Tworzenie warstwy za pomoc arkusza stylw ............................................................................806
Zastosowanie pozycjonowania wzgldnego .................................................................................808
Modyfikowanie warstw .......................................................................................................................809
Zaznaczanie warstwy ....................................................................................................................810
Zmiana wielkoci warstwy............................................................................................................810
Przesuwanie warstwy ....................................................................................................................811
Paleta Layers .................................................................................................................................818
Wyrwnywanie warstw za pomoc linijek i siatki........................................................................820
Umieszczanie elementw strony w warstwie................................................................................822
Formularze i warstwy....................................................................................................................823
Tworzenie ukadu strony z wykorzystaniem warstw ..........................................................................823
Wykorzystanie szkicu strony.........................................................................................................824
Zapobieganie nakadaniu si warstw.............................................................................................825
Precyzyjne tworzenie ukadu strony i przeksztacanie zawartoci strony w warstwy ..................825
Konwertowanie warstw na tabele..................................................................................................827
Przyczanie behawiorw do warstw ..................................................................................................828
Behawior Drag Layer ....................................................................................................................829
Behawior Set Text of Layer ..........................................................................................................831
Behawior Show-Hide Layers ........................................................................................................832
Zastosowanie praktyczne warstwa wywietlana podczas adowania strony ..................................833
Podsumowanie.....................................................................................................................................834
 (7#16 (  (
 * (((   30
Czwarty wymiar stron .........................................................................................................................836
Moliwoci narzdzia Timelines...................................................................................................837
Kilka podstawowych regu............................................................................................................837
Tworzenie animacji za pomoc narzdzia Timelines..........................................................................838
Dodawanie warstw w palecie Timelines .............................................................................................839
Modyfikowanie animacji .....................................................................................................................840
Modyfikacje paskw animacji.......................................................................................................841
Wykorzystanie elementw kontrolnych w palecie Timelines .........................................................842
Dodawanie uj kluczowych.........................................................................................................844
Usuwanie elementw z animacji...................................................................................................846
Zmiana szybkoci ruchu animowanego obiektu ...........................................................................846



!"$.(/(

Nagrywanie cieki ruchu obiektu ................................................................................................847


Wykorzystanie behawiorw w animacji..............................................................................................849
Zastosowanie praktyczne tworzenie animowanej galerii ...............................................................851
Etap 1. Przygotowanie elementw graficznych ............................................................................851
Etap 2. Tworzenie animacji pokazu slajdw.................................................................................853
Etap 3. Tworzenie animacji poruszajcych si warstw.................................................................854
Etap 4. Dodawanie behawiorw....................................................................................................856
Podsumowanie.....................................................................................................................................858

'  (   0  ,!"  1./


 (7=D E  3-%
Podstawowe wiadomoci o jzyku XML ............................................................................................861
Eksportowanie plikw XML ...............................................................................................................863
Importowanie plikw XML.................................................................................................................866
Podsumowanie.....................................................................................................................................867
 (7%  (  :( 888  3-1
Podstawowe wiadomoci o aktywnych stronach WWW ....................................................................870
Podstawowe wiadomoci o bazach danych...................................................................................870
Jak dziaaj aktywne strony WWW?.............................................................................................873
Witryny komercyjne i sklepy internetowe...........................................................................................874
Zasady rzdzce handlem elektronicznym ..........................................................................................875
Szyfrowanie informacji .................................................................................................................876
Potwierdzenie tosamoci .............................................................................................................876
Koszyki w wirtualnym sklepie ......................................................................................................877
Zgodno Dreamweavera z kodem aktywnych stron WWW..............................................................878
Podsumowanie.....................................................................................................................................880

'&* (( *(


   (  11%
 (7#4/  33
Podstawowe wiadomoci o szablonach ...............................................................................................883
Tworzenie szablonw ..........................................................................................................................885
Obszary edytowalne szablonu .............................................................................................................886
Tworzenie obszarw edytowalnych na podstawie istniejcych elementw .................................886
Tworzenie nowego obszaru edytowalnego ...................................................................................887
Blokowanie obszaru edytowalnego...............................................................................................888
Umieszczanie treci w dokumentach opartych na szablonach ............................................................888
Dodawanie behawiorw do stron opartych na szablonach ...........................................................890
Wstawianie znacznikw <meta> do stron opartych na szablonach ..............................................891

Praca z szablonami w palecie Assets...................................................................................................892


Tworzenie pustego szablonu .........................................................................................................893
Usuwanie i otwieranie szablonw.................................................................................................894
Przypisywanie szablonw do istniejcych stron ...........................................................................894
Uaktualnianie szablonw.....................................................................................................................895
Modyfikowanie domylnego szablonu ................................................................................................896
Podsumowanie.....................................................................................................................................897

4
( (



 (78    (/(/(   311


Biblioteki Dreamweavera ....................................................................................................................899
Kategoria Library w palecie Assets.....................................................................................................900
Wstawianie elementu do biblioteki ...............................................................................................901
Przenoszenie elementw biblioteki do innej witryny....................................................................902
Wstawianie elementw z biblioteki do dokumentu ......................................................................902
Usuwanie elementw z biblioteki .................................................................................................904
Zmiana nazwy elementu biblioteki ...............................................................................................905
Edycja elementw biblioteki ...............................................................................................................905
Aktualizowanie witryny za pomoc elementw biblioteki .................................................................906
Pliki doczane po stronie serwera ......................................................................................................908
Wstawianie plikw SSI na stron..................................................................................................909
Edycja plikw SSI .........................................................................................................................910
Podsumowanie.....................................................................................................................................912
 (7$   ( 2  :@) (
2*(  1%
Konwersja stron ...................................................................................................................................914
Tworzenie stron zgodnych z przegldarkami w wersji 3.0 ...........................................................914
Dostosowywanie strony zgodnej z przegldarkami w wersji 3.0 do standardw wersji 4.0 ........916
Zgodno strony z rnymi przegldarkami .......................................................................................918
Kod rdowy stron zgodnych z rnymi przegldarkami ...........................................................919
Projektowanie stron zgodnych ze starszymi modelami przegldarek...........................................920
Zastosowanie praktyczne wykrywanie typu przegldarki..........................................................922
Testowanie strony pod ktem zgodnoci z rnymi przegldarkami..................................................924
Testowanie zgodnoci jednej strony..............................................................................................925
Testowanie zgodnoci caej witryny .............................................................................................926
Wykorzystanie wynikw testowania.............................................................................................927
Modyfikowanie profilu przegldarki...................................................................................................928
Struktura profilu przegldarki .......................................................................................................928
Tworzenie profilu przegldarki .....................................................................................................929
Podsumowanie.....................................................................................................................................932
 (70  (( 
  1
Procedury Check In/Check Out ...........................................................................................................934
Omwienie procedur Check In/Check Out ...................................................................................935
Konfiguracja procedur Check In/Check Out.................................................................................936
Wykonywanie procedur Check in i Check Out.............................................................................938
Integracja Dreamweavera z Visual SourceSafe...................................................................................940
Komunikacja za pomoc protokou WebDAV....................................................................................942

Wykorzystanie notatek w zarzdzaniu procesem tworzenia witryny..................................................944


Konfigurowanie notatek ................................................................................................................945
Definiowanie statusu za pomoc notatek ......................................................................................946
Tworzenie notatek dostosowanych do potrzeb uytkownika.............................................................948
Przegldanie notatek......................................................................................................................948
Kolumny podgldu pliku .....................................................................................................................949



!"$.(/(

Generowanie raportw ........................................................................................................................952


Raporty HTML..............................................................................................................................954
Raporty o postpie prac nad witryn.............................................................................................955
Podsumowanie.....................................................................................................................................957

! (  /./


! 65
(  (
7  !  1-%
! .   /7,2(  ..+(-=#  1-
!    /7,2(   4($0  11
! ! ,.,(  %=%
4  ( %=#1

W rozdziale:


Podstawowe informacje na temat tworzenia behawiorw

Obiektowy model dokumentu (DOM)

Interfejs programowania (API) Dreamweavera

Czsto wykorzystywane funkcje

Techniki tworzenia okrelonych funkcji behawiorw

Kady, kto zna jzyki HTML i JavaScript, moe pisa wasne behawiory. Okrelenie
pisa behawiory jest okreleniem nieco na wyrost. Nigdy nie zmodyfikujesz tej czci
behawiora, ktra jest odpowiedzialna za zdarzenia. Moesz tworzy jedynie pliki akcji.
Aby pomc twrcom behawiorw, firma Macromedia udostpnia dokumentacj Extending
Dreamweaver zawierajc opisy wszystkich funkcji i rozszerze JavaScriptu i obiektowego modelu dokumentu (DOM) rozpoznawanych przez program Dreamweaver.
W Dreamweaverze 4 znacznie rozbudowano moliwoci behawiorw. Dziki znacznie
wikszej liczbie funkcji z DOM Dreamweaver moe wpywa na niemal kady element
strony WWW. Moesz nawet wykorzysta behawiory do otwierania istniejcych dokumentw lub tworzenia nowych. JavaScript API (interfejs programowania) Dreamweavera umoliwia wykorzystanie ponad 400 funkcji. W tym rozdziale opisane s jedynie
funkcje przydatne przy tworzeniu behawiorw, ale opis wikszoci funkcji API Dreamweavera wykracza znacznie poza zakres tematyczny tej ksiki. Zanim poznasz
szczegowe zasady tworzenia behawiorw, musisz zapozna si z oglnym zarysem
tego procesu.


     
Tworzenie behawiora nie jest procesem skomplikowanym, jeli podzielisz go na etapy.


Etap 1. Zdefiniuj behawior. Behawior to metoda doczenia do strony okrelonej


funkcji JavaScript. Najlepszym sposobem rozpoczcia tworzenia behawiora jest
napisanie tej wanie funkcji. Funkcja zostanie doczona do pliku akcji.



J 
 




Etap 2. Stwrz plik akcji. Jedn z najwaniejszych funkcji uywanych


w behawiorach jest funkcja 
 , ktra powoduje wstawienie
kodu do sekcji  dokumentu. Dreamweaver umoliwia wstawianie do kodu
grupy funkcji lub pojedynczej funkcji.

Etap 3. Stwrz interfejs uytkownika. Wszystkie behawiory posiadaj okno


dialogowe. Okno to opiera si na formularzu stworzonym w jzyku HTML
i czsto nazywane jest formularzem wprowadzania parametrw (parameter form).

Etap 4. Docz behawior do znacznika. Behawior skada si ze zdarzenia i akcji.


Funkcja  umoliwia doczenie Twojej funkcji do znacznika
i zdarzenia. Funkcja ta przekazuje rwnie argumenty funkcjom znajdujcym si
w sekcji .

Etap 5. Zbadaj behawior. Z punktu widzenia uytkownika, tworzenie strony WWW


to proces oparty na metodzie prb i bdw. Prbujesz dziaanie jednego zestawu
parametrw, a jeli to, co zobaczysz, nie spenia Twoich oczekiwa, prbujesz inny
zestaw parametrw. Aby zmodyfikowa parametry behawiora, naley dwukrotnie
klikn jego nazw, eby otworzy okno dialogowe. Funkcja   
umieszcza w polach okna dialogowego poprzednio ustalone wartoci.

Etap 6. Przetestuj behawior. Ostatni czynnoci jest testowanie. Przetestuj


dziaanie behawiora w rnych przegldarkach i usu bdy, jeli jakie wystpi
(a tego moesz by pewny).

W kilku nastpnych podrozdziaach przedstawiony jest proces tworzenia behawiora Set


Layer Z Index autorstwa Massimo Fotiego. Zmiana pooenia warstwy w stosie (czyli
wartoci parametru z-index) jest atwa podczas tworzenia strony, ale zrealizowanie tego
samego na ywej stronie nie jest atwe. M. Foti zaprojektowa behawior umoliwiajcy
interaktywn kontrol pooenia warstwy w stosie. Behawior Set Layer Z Index jest stosunkowo prosty, ale bardzo elegancko napisany i przez to stanowi idealny materia do nauki.
Do Dreamweavera doczany jest behawior Change Property, za pomoc ktrego
rwnie mona zmieni kolejno warstw w stosie, ale nie jest on zgodny z obydwoma
typami przegldarek. Aby osign za jego pomoc taki efekt, jak za pomoc
behawiora napisanego przez M. Fotiego, musiaby przypisa go dwa razy
raz dla Netscape Navigatora, a drugi raz dla Internet Explorera.



 
Behawiory powstaj w wyniku konkretnej potrzeby. Wielokrotne powtarzanie tej samej
operacji prowadzi zwykle do konkluzji: Musi istnie na to lepszy sposb. Lepszy
sposb oznacza zwykle automatyzacj tego procesu. Jeli procesem tym jest wstawianie do kodu strony funkcji JavaScript, to rozwizaniem jest behawior.
Takie postawienie problemu jest jednoczenie pierwsz faz tworzenia behawiora
okreleniem jego zadania. Jeli zadaniem tym miaoby by wstawienie na stron kodu
umoliwiajcego dynamiczn zmian kolejnoci warstw w stosie, kod wygldaby nastpujco:


  J 
 




 

 
  

 
      
 !"#

  $$%&

'
 
  
  
   
 ! 
"
  
 #  $ % %& &#
  '# ! #
"
"



 
(  ($)******
( #)#*+# 
&  ,-&. + -&/&&0&#+
1*+2 3(% 1


(,- 

 .( /.#0! ."! +
1
.203 
$.#40 5
.# (,$ . )** +
(,$ . )** ( . #   )666666
7, 




/ - 

 .( /.02  .4! +
1
.#80 
$.0!  5
.0 (,$ . )** +
(,$ . )** ( . #   )666666
*  -


( 


Zwr uwag na linie wyrnione pogrubion czcionk. To najwaniejsze elementy kodu funkcja w sekcji  (akcja) i funkcja doczona do tekstu (zdarzenie). Testy
w rnych przegldarkach wypady pomylnie, zatem mona na podstawie tej funkcji
stworzy behawior.
Tworzc behawior w ten sposb, okrelasz od razu argumenty, ktrych wartoci bdzie
mona modyfikowa. W naszym przykadzie s dwa takie argumenty: 
i 
. W idealnym przypadku akcja powinna by na tyle elastyczna, aby moliwe
byo okrelenie wartoci dowolnego argumentu. W naszym przykadzie s dwa atrybuty, ktrych wartoci bdzie mona ustala w oknie dialogowym.
Po stworzeniu i przetestowaniu funkcji w Dreamweaverze zapisz j na dysk. Czsto
podczas tworzenia pliku akcji powracam do oryginalnego pliku, aby sprawdzi, czy nie
popeniem adnego bdu.

 
W kolejnym etapie procesu tworzenia behawiora stworzysz szkielet pliku akcji i rozpoczniesz dodawanie do niego niezbdnych funkcji JavaScriptu. W kadym pliku akcji
musz znajdowa si co najmniej cztery funkcje.



J 
 


    .

Okrela, czy behawior moe by dostpny. Jeli nie jest,


nie mona wybra go z menu Add Action.

 
 .
 .

Wstawia funkcje do sekcji  dokumentu.

Docza funkcje do zaznaczonego znacznika i wstawia wybrane

zdarzenie.
   .

Umoliwia ponowne otwarcie okna dialogowego behawiora


i zmian wartoci parametrw.
Najatwiejszym sposobem utworzenia pliku akcji jest zmodyfikowanie istniejcego.
Moesz otworzy i modyfikowa dowolny plik akcji doczony do Dreamweavera.
Pamitaj jednak o tym, aby zapisa zmodyfikowany plik poleceniem Save As.

Do behawiorw i innych rozszerze mona docza zewntrzne pliki z kodem JavaScriptu


za pomoc znacznika     
       !  .
Moliwo t wykorzystuj wszystkie behawiory doczane do Dreamweavera. Zalet
takiego rozwizania jest moliwo wielokrotnego wykorzystania tego samego kodu
przez rne behawiory. Moesz oczywicie umieci interfejs uytkownika i funkcje
JavaScriptu w jednym pliku, ale obecnie zaleca si przechowywa je w dwch osobnych plikach okno dialogowe w pliku HTML, a funkcje w pliku o identycznej nazwie, ale z rozszerzeniem .js.
Nasz przykad jest bardzo prosty. Nie wykorzystamy w nim opisywanej wyej techniki.

Zaczynamy tworzenie pliku akcji.


1. Wybierz z menu polecenie FileNew.
2. Wybierz z menu polecenie ModifyPage Properties, aby zmieni tytu
behawiora.
3. Wybierz z menu polecenie FileSave As i zapisz plik HTML w katalogu
Configuration/Behaviors/Actions.
4. Przejd do okna widoku kodu (Show Code View), otwrz inspektor Code
lub edytor tekstu, w ktrym bdziesz wpisywa kod rdowy akcji.
Najlepiej pracuje si nad formularzem z parametrami (interfejsem uytkownika)
w oknie otwieranym klikniciem przycisku Show Design View, a nad plikiem
JavaScript w oknie otwieranym przyciskiem Show Code View.

5. Wpisz do sekcji  dokumentu znacznik  


 
  
!  .
6. Otwrz plik zawierajcy funkcj.
7. Skopiuj kod funkcji do pliku behawiora.
W naszym przykadzie skopiowana zostaa funkcja " #$% &.


  J 
 



Upewnij si, e nazwa behawiora jest unikalna, czyli e aden inny behawior nie
posiada takiej nazwy. Przy pierwszym otwarciu palety Behaviors Dreamweaver
sprawdza, czy nie ma w katalogu behawiorw o powtarzajcych si nazwach.
Jeli s, Dreamweaver uwzgldnia tylko ten, ktry zosta stworzony wczeniej.

8. Dodaj do znacznika    nastpujce funkcje:


/ 
  97
:;<
 
=
/ 
 (
* 
 :;<
 >-? 
=
/ 
 7
:;<
 
=
/ 

7
:$&;<
=

Tylko jedna z powyszych funkcji jest gotowa 


 .
Reszta to dopiero podstawy do napisania funkcji.
Funkcja 
  moe zwraca wicej ni jedn funkcj. Wicej
informacji na ten temat znajdziesz w podrozdziale Techniki tworzenia behawiorw
znajdujcym si w dalszej czci tego rozdziau.

Po stworzeniu podstawowej struktury behawiora naley zdefiniowa sytuacje, w ktrych


behawior moe zosta wykorzystany. Realizuje si to za pomoc funkcji    '
. Jeli behawior nie wymaga istnienia na stronie okrelonych elementw, moesz pozostawi t funkcj bez zmian. Nasz przykadowy behawior wykorzystuje warstwy, wic powinien by dostpny tylko wtedy, gdy na stronie znajduj si warstwy.
Sprawdzenia obecnoci warstw dokonuje si za pomoc nastpujcego kodu:
/ 
  97
:;<
 9  $@(AB/:C& 4D6E  E-9FGB;
 : 9D $  6;
=

Jeli funkcja  ( )* znajdzie na stronie warstwy, rozmiar tablicy "
bdzie wikszy od zera i funkcja     zwrci warto true. Jeli funkcja zwrci warto false, behawior bdzie znajdowa si w menu Add Action, ale jego
wybranie nie bdzie moliwe.

 

 
Interfejsem uytkownika w przypadku behawiora jest formularz wprowadzania parametrw, stworzony za pomoc elementw formularza dostpnych w jzyku HTML.
Liczba i typ argumentw wymaganych przez funkcj s gwnymi wyznacznikami tego,
co powinno znale si w formularzu.



J 
 



W naszym przykadzie funkcja wymaga dwch argumentw: nazwy warstwy (argument



) i liczby okrelajcej pooenie warstwy w stosie (argument 
). Interfejs
powinien wic umoliwia uytkownikowi wprowadzenie wartoci tych argumentw.
Wszystkie elementy interfejsu uytkownika znajduj si w sekcji  pliku HTML.
Moesz do ich tworzenia wykorzysta narzdzia Dreamweavera. Wielu projektantw
wykorzystuje tabele do wyrwnywania elementw formularza. Jeli Ty rwnie zamierzasz to zrobi, pamitaj o tym, aby umieci tabel wewntrz znacznika *", a nie
odwrotnie. W przeciwnym przypadku mgby umieci formularz jedynie w jednej
komrce tabeli.
Tworzymy interfejs uytkownika.
1. Otwrz plik akcji w Dreamweaverze.
2. W oknie dokumentu wybierz z menu polecenie InsertForm lub kliknij przycisk
Insert Form znajdujcy si w palecie Objects. Nadaj formularzowi nazw.
3. Umie w formularzu tabel, wybierajc z menu polecenie InsertTable
lub klikajc przycisk Insert Table w palecie Objects.
4. Dodaj do formularza wszystkie niezbdne elementy. Pamitaj o nadawaniu
kademu z nich nazwy (wyjtkiem s grupy przyciskw opcji tu nadajesz
nazw caej grupie).
Podobnie jak w przypadku obiektw, tu rwnie, tworzc formularz wprowadzania
parametrw, nie zobaczysz w nim przyciskw OK, Cancel i Help. Dreamweaver
automatycznie umieszcza je w prawym grnym rogu interfejsu.

Interfejs uytkownika dla akcji Set Layer Z Index, przedstawiony na rysunku 20.1, wykorzystuje list opcji, w ktrej znajduj si nazwy dostpnych na stronie warstw oraz
pole tekstowe do wpisania wartoci parametru z-index.

 
W formularzu
wykorzystane s#
pola tekstowe
przekazuj#ce dane
do odpowiednich
funkcji


  J 
 



Ostatni czynnoci w procesie tworzenia interfejsu uytkownika jest napisanie funkcji


inicjalizujcej go i umieszczajcej kursor tekstowy w odpowiednim polu. Do tego celu
suy funkcja   +,%, znajdujca si w sekcji Local Functions kodu rdowego.
W naszym przykadzie w interfejsie uytkownika wszystkie znajdujce si na stronie
warstwy powinny by wywietlane w licie. Aby to zrealizowa, funkcja   +,%
wywouje inn funkcj:
/ 




5 ?:; <

C9
H    
(

$  /
   (A / 

 

C9 
C :$9@(AB/"C&
4D6E-9FGB;E FIG>-;
I    
&:-9FGB>-?&E
C9;
& /  (
/
@(A:J?CGK;D/:;
&

 

 (
/
@(A:J?CGK;D:;
=

Do inicjalizacji okna dialogowego Massimo Foti stosuje kombinacj funkcji autorskich


i tych opracowanych przez firm Macromedia. Funkcja Macromedii  -" zmienia referencje obiektu JavaScript, na przykad fragment 
" ./ $/0

"  " zamieniany jest na bardziej czyteln posta: *"  " 
 $. W wyniku tego funkcja  -" znajduje zastosowanie do wypeniania
listy rozwijanej za pomoc opracowanej przez Massimo funkcji 
 1 .
Dwie linie, ktre zaczynaj si funkcj * ( , stosowane s do umieszczenia
kursora w polu tekstowym po otwarciu okna dialogowego to wspaniae potwierdzenie profesjonalizmu Massimo Fotiego.
Na koniec naley przyczy funkcj   +,% do znacznika  za pomoc
zdarzenia  $. Moesz zrealizowa to dwoma sposobami. Pierwszy z nich polega na
wpisaniu do znacznika  dodatkowych atrybutw:
(   - 



5 ?:;

Drugi sposb polega na wykorzystaniu behawiora Call JavaScript (opisanego w rozdziale


19.). W tym przypadku wpisz tylko   +,% w oknie dialogowym behawiora.

 !"#
    
Teraz moesz napisa kod czcy funkcj ze znacznikiem i zdarzeniem. Proces ten
mona rozoy na trzy fazy:
1. Sprawdzenie, czy uytkownik wpisa odpowiednie informacje.
2. Przekonwertowanie informacji z formularza do bardziej uytecznego formatu.
3. Wywoanie odpowiedniej funkcji.
Wszystkie te czynnoci s realizowane przez funkcj  znajdujc si
w kodzie rdowym.



J 
 



Informacje z formularza wprowadzania parametrw pobiera si w podobny sposb,


w jaki byo to realizowane w przypadku obiektw. Wykorzystujc techniki omwione
w rozdziale 18., mona odczyta dane i przekonwertowa je na zmienne lokalne. Liczba
zmiennych jest rwna liczbie wymaganych argumentw funkcji.
Jeli przewidujesz, e cz danych z formularza bdzie wysyana do serwera,
musisz zakodowa je tak, aby mogy by odczytane przez serwery pracujce pod
kontrol systemu Unix. Za pomoc funkcji   moesz przekonwertowa spacje
i znaki specjalne na kody wykorzystywane przez Unix. Funkcja
  ma odwrotne
dziaanie i jest wykorzystywana w funkcji   .

Teraz utworzymy funkcj .


1. Zdefiniuj niezbdne zmienne:
 $
 L

2. Pobierz informacje z formularza. Przebieg tego procesu zaley od typu pl


wykorzystywanych w formularzu. W przypadku listy opcji naley znale
odpowiedni warto w tablicy zawierajcej nazwy warstw:

9  $@(AB/:C& 4D6E   E -9FGB;
$M N O:
9P*DD ? Q; N M

Funkcja  2 konwertuje nazw warstwy do odpowiedniego formatu.


3. Wywoaj funkcj uruchamiajc behawior z odpowiednimi parametrami.
Funkcja  musi zwrci acuch skadajcy si z wartoci
zmiennych. Zamknij wartoci argumentw w apostrofach. Jeli w tekcie
znajduj si cudzysowy, musisz poprzedzi je znakiem ukonika wstecznego.
4. Sprawd, czy wpisane zostay wszystkie wartoci. Jeli nie, poinformuj
o tym uytkownika.
G  :G;R . /1
$ /
   ( +
/
 . NG

/ :'G;
 >-? :N $N E  N L +
N ;
  G

Przed przetestowaniem akcji musisz wykona jeszcze jedn czynno.

$ 
 
Nadszed czas na dodanie do kodu behawiora funkcji   . Funkcja ta
jest wywoywana, gdy uytkownik dwukrotnie kliknie nazw behawiora w palecie Behaviors. Wywietla ona poprzednio wprowadzone przez uytkownika dane w formularzu
wpisywania parametrw i umoliwia ich zmian. W wielu przypadkach funkcja ta moe
by uwaana za przeciwiestwo funkcji  zamiast pobiera dane
z formularza i przesya je do kodu, pobiera dane z kodu i umieszcza je w formularzu.
Interpretacja danych z formularza okrelana jest mianem przetwarzania acucha (parsing). Akcja Set Layer Z Index przekazuje acuch w nastpujcej formie:
 
,>-? :M  DPSM(,-SMQMEM4M;


  J 
 



Dreamweaver podczas przetwarzania acuchw wykorzystuje kilka funkcji, ale najwaniejsz z nich jest funkcja  3 . Funkcja ta przyjmuje jako argumenty acuch tekstowy oraz list separatorw, a zwraca tablic zoon z acuchw tekstowych.
Pierwszym argumentem funkcji  3  jest acuch, ktry ma zosta przetworzony. Drugi argument powinien zawiera nawiasy, apostrof i przecinek, czyli znaki wykorzystywane w acuchu jako separatory:
 $9  $, :$&E:;ME;

Kiedy acuchy zostan umieszczone w tablicy, mog zosta z niej odczytane i umieszczone ponownie w formularzu wprowadzania parametrw. Wykonujc ponisze czynnoci, stworzysz funkcj   .
1. Zdefiniuj zmienn i przypisz jej warto do wartoci zwracanej przez funkcj
 3 .
2. Przypisz elementy tablicy tym samym zmiennym, ktrych uye w funkcji
:
 L O:$9P#Q;

3. Umie wartoci zmiennych w odpowiednich polach formularza:


*DD ? A
*DJD$9P0Q

4. Gotowa funkcja    wyglda nastpujco:


/ 

7
:$&;<
$9  9$:$&;
 $9  $, :$&E:;ME;


6  A6



9  $@(AB/:C& 4D6E   E -9FGB;
/ :A6A
9D $ANN;<
?$ O:$9P#Q;

/ :?$
9PAQ;<
*DD ? A
=
=
*DJD$9P0Q
=

W naszym przykadzie funkcja    jest stosunkowo prosta.


Pamitaj jednak, e im wicej danych w behawiorze wprowadza uytkownik,
tym bardziej skomplikowany bdzie proces ich wywietlania w formularzu.
Podobnie jak w innych etapach procesu tworzenia behawiora, tu rwnie
najlepszym sposobem stworzenia odpowiedniej funkcji   
bdzie przeanalizowanie behawiorw doczanych do Dreamweavera.

%&


 
Testowanie i usuwanie bdw z behawiora jest ostatnim i niezbdnym etapem w procesie jego tworzenia. Aby przetestowa behawior, wykonaj nastpujce czynnoci:
1. Uruchom ponownie Dreamweavera.
2. Wstaw na stron obrazek lub cze.



J 
 



3. Zaznacz element, ktry bdzie wyzwala akcj.


4. Otwrz palet Behaviors.
5. Wybierz zdarzenie  4 3 z menu Add Event.
6. Z menu Add Action wybierz nazw swojego behawiora.
7. Wpisz odpowiednie parametry w formularzu.
Nazwa akcji zostanie wywietlona w panelu Action (zobacz rysunek 20.2).


Odpowiednio
napisane behawiory
s# wy&wietlane
w palecie Behaviors

8. Kliknij dwukrotnie nazw akcji, aby sprawdzi, czy wartoci, ktre poprzednio
wprowadzie, s wywietlane w polach formularza.
9. Przetestuj dziaanie behawiora w rnych przegldarkach.
Kiedy po raz pierwszy wybierzesz zdarzenie, Dreamweaver bada wszystkie pliki
znajdujce si w katalogu Actions. Jeli wystpi problem, taki jak obecno dwch
plikw o identycznych nazwach, zostaniesz o tym poinformowany, a w licie
wywietlony zostanie jedynie starszy plik. Bdziesz wwczas musia skorygowa
nazwy plikw i ponownie uruchomi program.

Jeli planujesz rozpowszechnianie behawiora, przetestuj go bardzo dokadnie, szczeglnie dziaanie interfejsu uytkownika. Jako twrca behawiora bdziesz wiedzia, jakie
wartoci maj by wpisane w formularzu i jak unikn potencjalnych bdw. Uytkownik nie bdzie posiada tak dokadnych informacji. Szczegln uwag zwr na informacje wpisywane w pola tekstowe. Jeli informacja ta nie jest treci komunikatu
wywietlanego na ekranie lub listwie statusowej, musi zosta zweryfikowana pod ktem
poprawnoci danych. Samo poinformowanie uytkownika o tym, e powinien wpisa
liczby z okrelonego przedziau, nie daje gwarancji, e to wanie zrobi.

'
"( 
 
Wystpienie bdu w programie jest chyba najmniej lubian przez programistw sytuacj, ale za to usunicie tego bdu jest wielkim sukcesem i rdem satysfakcji.
W przypadku wystpienia problemu najpierw powiniene sign po podstawowe techniki usuwania bdw ze skryptw JavaScript, takie jak np. zastosowanie funkcji
  w celu wywietlania wartoci zmiennych. Dreamweaver wywietla komunikaty
bdw w taki sam sposb jak przegldarki. Obsuga bdw w Dreamweaverze rozwizana jest bardzo dobrze. Wiele komunikatw o bdach wskazuje od razu bdny kod.


  J 
 



Jeli bdy s na tyle powane, e Dreamweaver nie rozpoznaje kodu jako akcji, plik nie
jest wymieniany w licie Action. W takiej sytuacji musisz ponownie uruchomi program
po usuniciu bdu. Jeli jednak usuwasz z kodu drobne bdy, moesz unikn koniecznoci ponownego uruchamiania Dreamweavera, wykorzystujc ponisze wskazwki.
1. Otwrz plik akcji i usu z niego bdy. Zapisz plik na dysk.
2. Przycz akcj do znacznika i otwrz okno dialogowe behawiora.
Nie wpisuj adnych parametrw, tylko kliknij przycisk Cancel.
3. Usu akcj z palety Actions.
4. Przypisz akcj ponownie. Dreamweaver zaaduje now wersj pliku.
Pamitaj, e w funkcjach JavaScript rozrniane s due i mae litery.
Jeli wywietlony zostanie komunikat o niemoliwoci znalezienia funkcji,
sprawd, czy poprawnie wpisae jej nazw.

      


Aby pomc programistom tworzcym behawiory, firma Macromedia udostpnia dokumentacj Extending Dreamweaver (rozbudowywanie Dreamweavera). Dokumentacja
ta opisuje funkcje przydatne przy tworzeniu behawiorw. Omawia podstawy dziaania,
tworzenia i wykorzystywania behawiorw oraz wykorzystywania rozszerze i wbudowanych funkcji. Dokumentacj Extending Dreamweaver znajdziesz w menu Help.
W dokumentacji Extending Dreamweaver opisane s wszystkie rodzaje rozszerze Dreamweavera, ale dla twrcw behawiorw najbardziej przydatne bd trzy jej czci:
Document Object Model (opisujca obiektowy model dokumentu), Dreamweaver JavaScript API (interfejs JavaScriptu w Dreamweaverze) oraz Behaviors (omawiajca tworzenie behawiorw). Im wicej bdziesz wiedzia o rnych komponentach i ich funkcjach, tym atwiej bdzie Ci tworzy kolejne behawiory.
Materia opisany w tym podrozdziale przeznaczony jest dla programistw znajcych
jzyk JavaScript, a wic dla Czytelnikw bardzo zaawansowanych.

)
*
 *

JavaScript to interpretowany jzyk programowania, odwoujcy si do elementw przegldarki i strony WWW w sposb hierarchiczny. Aby uzyska dostp do waciwoci
kadego obiektu znajdujcego si na stronie, JavaScript wykorzystuje obiektowy model
dokumentu (DOM). DOM rozbija stron na mae elementy, tak aby mona byo zidentyfikowa kady z jej elementw.
Jak wspomniaem we wprowadzeniu, Dreamweaver 4 posiada bardzo rozbudowany
DOM, w ktrym zawarte s elementy obiektowego modelu dokumentu uywanego
przez Netscape Navigatora oraz elementy DOM okrelonego przez W3C. Oprcz tego



J 
 



mona znale w nim niezwykle uyteczne funkcje nieobecne w adnej innej implementacji DOM. Chyba najwiksze rozszerzenie DOM Dreamweavera jest zwizane
z palet History. Wczeniej kada akcja uytkownika, ktra miaa by powtarzana, wymagaa obecnoci odpowiedniego kodu JavaScript.




DOM Dreamweavera udostpnia niemal kady element strony WWW. DOM jest zbudowany analogicznie do drzewa, w ktrym dokument HTML jest pniem. Gwnymi
gaziami tego drzewa nie s jednak sekcje  i . DOM Dreamweavera, na
wzr DOM zdefiniowanego przez W3C, wykorzystuje cztery oddzielne gazie (zwane
rwnie wzami node):


DOCUMENT_NODE umoliwia dostp do obiektw zwizanych z caym


dokumentem;

ELEMENT_NODE zawiera odwoania do wszystkich znacznikw HTML


w dokumencie;

TEXT_NODE opisuje bloki tekstu zawarte pomidzy znacznikami HTML;

COMMENT_NODE reprezentuje wszystkie komentarze znajdujce si


w dokumencie.

Jedna ga drzewa moe rozdziela si na mniejsze i analogicznie jeden wze


moe zawiera inne. Warstwa moe zawiera tabel, w ktrej z kolei znajduj si komrki z zapisanymi danymi. Takie poczenie wzw nazywane jest poczeniem hierarchicznym (parent-child relationship), a wze, ktry nie zawiera innych wzw, nazywany jest liciem (leaf node). Rysunek 20.3 przedstawia schemat koncepcji wzw
w dokumencie.

!
Koncepcja w'zw
jest wykorzystywana
do okre&lenia
struktury dokumentu
HTML i jego powi#zaz przegl#dark#


  J 
 



 
 
  

Skadnia odwoania do okrelonego znacznika opiera si na kolejnych elementach, od
najwyej pooonego w hierarchii do najniszego. Na przykad zamy, e chcesz
sprawdzi, co uytkownik wpisa w pole tekstowe zwracajce parametr o nazwie value.
Odwoujesz si wic do dokumentu i posuwasz si w d hierarchii:
    D*D(D

DOM okrela, jakie waciwoci i w jakiej formie s dostpne. Nie wszystkie waciwoci i metody mona bezporednio wykorzysta. Np. nie moesz odwoa si bezporednio do wartoci zwracanej przez przycisk w formularzu. Musisz przypisa t warto do
pola ukrytego i dopiero wtedy bdziesz mg j wykorzysta.
Skadniki DOM zwizane z formularzami i ich elementami zostay opisane w rozdziale
18. Reguy wykorzystywania i ograniczenia dotyczce uywania formularzy w obiektach
dotycz rwnie wykorzystywania formularzy w behawiorach. Dodatkowo, DOM Dreamweavera udostpnia inne obiekty, co przedstawione jest w tabeli 20.1. Waciwoci nadajce
si tylko do odczytu s oznaczone symbolem *, pozostae mona odczytywa i ustawia.

 
Metoda (method) to w programowaniu okrelenie funkcji doczonej do okrelonego
obiektu, na przykad do dokumentu. DOM Dreamweavera zawiera wiele metod uatwiajcych prac z dokumentami HTML. Dziki wzom moesz uywa tych metod
w odniesieniu do dokumentu, zestawu ramek, ramki lub zaznaczonego obiektu.
Wykorzystujc te metody, behawiory mog analizowa stron i modyfikowa lub nawet
usuwa atrybuty znacznikw. W tabeli 20.2 znajduje si lista metod DOM Dreamweavera.

+

,&-!
*
.

Interfejs programowania (API) Dreamweavera 4 zosta rozbudowany tak, e posiada
funkcje odpowiadajce niemal wszystkim operacjom wykonywanym przez program
Dreamweaver. Zawiera on ponad 400 funkcji, z ktrych wiele zostao stworzonych
z myl o wsppracy z palet History. Dokadne omwienie API wykracza daleko poza
ramy tej ksiki, ale twrcy behawiorw powinni zapozna si z jego moliwociami.
Cz JavaScript API dokumentacji Extending Dreamweaver jest podzielona na nastpujce kategorie:


Behaviors behawiory,

Clipboard schowek systemowy,

Command polecenia,

Conversion konwersja,

CSS Style style CSS,

External Application zewntrzne aplikacje,

File Manipulation operacje na plikach,



J 
 



 
  Wa&ciwo&ci DOM Dreamweavera
Waciwo

Wzy

Opis

Zwracane wartoci

 T

Wszystkie

Zwraca nazw wza, w ktrym


znajduje si zaznaczony element

@ UGC>C@G
G-GUGC>C@G
GK>C@G
@UUGC>C@G

 C T

Wszystkie

Zwraca nazw wza


nadrzdnego, lub jeli
zaznaczony jest znacznik
nazw dokumentu

Dowolny wze

 V
1T

@ UGC>C@G

Zwraca nazw obiektu


JavaScript odpowiadajcego
gwnemu oknu dokumentu

acuch tekstowy


 C T

Wszystkie

Zwraca list wzw


znajdujcych si w hierarchii
pod zaznaczonym

Tablica

 G T

@ UGC>C@G

Odpowiada znacznikowi 


aktualnego dokumentu


 DDD ( 


(jeli uyta w poczeniu


z waciwoci 
56$)
( T

@ UGC>C@G

Odpowiada znacznikowi ( 


aktualnego dokumentu

( DDD ( 

(jeli uyta w poczeniu


z outerHTML)

B-T

@ UGC>C@G

Zwraca ciek dostpu


do dokumentu

*?-G.W@&
CGVDXU- przykad

$CT

G-GUGC>C@G

Zwraca nazw znacznika

?UH  97-G

przykad
C

G-GUGC>C@G

Zwraca warto podanego


atrybutu

$  )2288

przykad

XU-

G-GUGC>C@G

Zwraca kod rdowy HTML


znajdujcy si wewntrz
okrelonego znacznika

(*
 C(


56$

G-GUGC>C@G

Zwraca kod rdowy HTML


znajdujcy si wewntrz
okrelonego znacznika wraz z
tym znacznikiem

(*

C(

 

GK>C@G

Zwraca acuch tekstowy


znajdujcy si wewntrz
okrelonego znacznika

%D -1 dla znacznika


%D -1

@UUGC>C@G


  J 
 



 
 Metody DOM Dreamweavera
Metoda

Zwracana warto

Opis

$G 7$C
: 51>5 5
,;

Lista wzw

Tworzy tablic wystpie okrelonego


znacznika w kodzie strony

$  9


(
: 51>5 5
,;

Warto

Pobiera warto okrelonego atrybutu.


Uywana w poczeniu z filtrami (translators)


 C :;T

Warto logiczna

Okrela, czy zaznaczony element posiada


elementy potomne w hierarchii

  9


(:;

Warto logiczna

Okrela, czy zaznaczony znacznik posiada


atrybuty interpretowane za pomoc filtrw

$9
( : 51>(;

Warto

Pobiera warto wskazanego atrybutu

9
(: 51>
(E1YZ>(;

Brak

Przypisuje okrelonemu atrybutowi podan


warto

9
(: 51> (;

Brak

Usuwa okrelony atrybut

Find/Replace wyszukiwanie i zastpowanie,

Frame and Frameset ramki,

General Editing edycja,

Global Applications aplikacje,

Global Document dokument,

History paleta History,

HTML Style style HTML,

Keyboard klawiatura,

Layer and Image Map warstwy i mapy obrazkw,

Menu menu,

Path cieki dostpu do plikw,

Quick Tag Editor edytor Quick Tag,

Selection zaznaczanie elementw,

Site okno Site,

String Manipulation operacje na tekstach,

Table Editing edycja tabel,

Toggle przeczniki,

Translation filtry,

Visual Layout wizualne projektowanie ukadu strony,

Window okna.



J 
 



Twrcw behawiorw szczeglnie zainteresuj funkcje opisane w czciach Behaviors,


File Manipulation, Global Document, Path, Selection i String Manipulation.
Programici z firmy Macromedia opracowali rwnie API dla operacji wejcia-wyjcia,
dziennika projektu, integracji z Fireworks i pocze HTTP. Extending Dreamweaver
zawiera oglny opis kadego z nich.
Aby uatwi poznanie API Dreamweavera, zamieciem w nastpnych podrozdziaach
opisy najczciej uywanych rozszerze API. Opisy oczywicie nie wyczerpuj tematu,
ale s rdem najwaniejszych informacji na temat sposobu dziaania funkcji API.
Zauwa, e nazwy rozszerze API maj przedrostek .dreamweaver lub .dom.
Przedrostek .dreamweaver moe by skrcony do postaci .dw, na przykad
dw.getDocumentDOM(). Funkcje z przedrostkiem .dom odwouj si do DOM
dokumentu zwracanego przez funkcj  7
" 7(6, opisan w nastpnym
podrozdziale.

 !
"!#
Funkcja  7
" 7(6 jest baz wielu operacji wykonywanych za pomoc JavaScriptu w Dreamweaverze. Przypisanie wartoci tej funkcji do zmiennej powoduje
zwrcenie caego DOM okrelonego dokumentu, co umoliwia jego odczytywanie
i edycj. Oglnie, funkcja ta jest wykorzystywana w nastpujcy sposb:
   1D$ @U:;:  ;

W tym przykadzie zmienna theDom okrela dokument i wszystkie znajdujce si


w nim elementy. Po odwoaniu si do DOM w ten sposb moesz odwoa si do bardziej szczegowych informacji. Np. jeli chcesz zbada sekcj  dokumentu, moesz uy nastpujcych funkcji:
   1D$ @U:;:  ;
 7   D( 

Moesz rwnie zapisa to w postaci skrconej:


 7   1D$ @U:;:  ;D( 

Wiele behawiorw odwouje si do DOM dokumentu bardzo czsto,


wic dobrze jest przypisa go na pocztku skryptu do zmiennej.

Funkcja  7
" 7(6 wymaga jednego argumentu, sourceDoc, okrelajcego dokument. Argument moe przyjmowa nastpujce postaci:
 
" .

Okrela aktualnie otwarty dokument. Argument ten moe by uyty


w dowolnym miejscu skryptu, ale wszelkie wykonywane za jego pomoc
modyfikacje musz by wywoywane z funkcji ,
  lub   (lub dowolnej funkcji z inspektora Property
bd Command).

  .

Okrela dokument nadrzdny wzgldem aktualnego. Argument ten jest


zwykle wykorzystywany do okrelania, czy dokument znajduje si w ramce:


  J 
 



 /  1D$ @U: ;

/ :/; < DDD , DDD =


  *". +0

lub  *"./ +8#"3/0. Takie postaci


argumentu s wykorzystywane do odwoywania si do innego dokumentu,
znajdujcego si w tym samym zestawie ramek. Pierwsza forma jest
wykorzystywana w sytuacjach, gdy nazwy ramek s nieznane lub gdy trzeba
przeszuka okrelon liczb ramek. Druga posta okrela dokument znajdujcy
si w ramce o podanej nazwie.

Adres URL. Czasami twrca behawiora odwouje si do istniejcych


dokumentw znajdujcych si na dysku lokalnym lub w sieci. Wykorzystanie
w roli argumentu adresu URL (w postaci bezwzgldnej lub wzgldnej) umoliwia
uzyskanie informacji o niemal dowolnym dokumencie. Jeli uywasz adresu
wzgldnego, pamitaj, e musisz okreli go wzgldem pooenia behawiora:

B  1D$ @U+
:MDDDDDDX ?DM;

Jeli okrelona funkcja API wymaga DOM dokumentu, jak na przykad funkcja
"  1   i inne omwione w nastpnych podrozdziaach, musisz najpierw
uzyska do niego dostp. W nastpnych przykadach zaoono, e zmiennej 7"
przypisano ju odpowiedni warto:
 @U  1D$ @U:  ;
 &  @UD$&
 :;

 #$
Dziaanie behawiora jest czsto determinowane przez to, jaki znacznik zosta zaznaczony przez uytkownika przed doczeniem behawiora. Wykorzystanie funkcji  1 '
  jest pierwszym krokiem w zbieraniu informacji niezbdnych do kontrolowania
behawiora na podstawie zaznaczonego znacznika. Podkrelam sformuowanie pierwszym krokiem, poniewa funkcja ta zwraca informacj o zaznaczonym znaczniku w postaci offsetu (przesunicia) mierzonego w bajtach. Offset to liczba wskazujca adres
komrki pamici. W przypadku wartoci zwracanych przez funkcj  1  
dwa offsety wskazuj adresy pocztku i koca zaznaczenia. Jeli wpiszesz na pustej
stronie w Dreamweaverze zdanie: Dwa gwne zaoenia i zaznaczysz pierwsze sowo, funkcja  1   uyta w nastpujcy sposb:
 9  @UD$&
 :;
:9;

spowoduje wywietlenie w oknie komunikatu dwch liczb:


#8#E#84

ktre wskazuj pierwszy i ostatni bajt offsetu zaznaczonego sowa. Jeli pierwszy
i ostatni bajt s takie same (na przykad 164 i 164), oznacza to, e nic nie zostao zaznaczone. Fakt ten przydaje si w sytuacji, gdy chcesz upewni si, e uytkownik zaznaczy jaki element na stronie.



J 
 



Aby okreli, co znajduje si pod adresem wskazywanym przez offsety zwrcone przez
funkcj  1  , musisz uy funkcji ** -, omwionej w jednym
z dalszych podrozdziaw.

 #%$
Funkcja "  1   dziaa przeciwnie do funkcji  1  , mianowicie definiuje nowe offsety i przez to nowy obszar zaznaczenia w dokumencie. Funkcja ta wymaga
podania dwch argumentw: offsetBegin (pocztek offsetu) i offsetEnd (koniec offsetu).
Funkcja  1   jest zwykle wykorzystywana do przywracania zaznaczenia
okrelonego przez uytkownika. W poniszym przykadzie obszar zaznaczenia zapisywany jest w zmiennej za pomoc funkcji  1  , a pniej, po modyfikacjach
dokumentu, odtwarzany za pomoc funkcji  1  :
 &
  @UD$&
 :;
 A , / ,A
 /
,A[ , 
@UD&
 :&
 P6QE&
 P#Q;

Jeli nowy obszar zaznaczenia obejmuje, na przykad, atrybuty w znaczniku,


jest rozszerzany tak, aby obj cay znacznik.

Moesz rwnie wykorzysta funkcj  1   do usunicia zaznaczenia po wykonaniu behawiora. W tym przypadku oba argumenty funkcji powinny mie t sam
warto. Kontynuujc poprzedni przykad, poniszy kod:
@UD&
 :&
 P#QE&
 P#Q;

spowoduje umieszczenie kursora za zaznaczeniem, a kod:


@UD&
 :&
 P6QE&
 P6Q;

ustawi kursor przed zaznaczeniem.

 #&&%'(
Funkcja ** - umoliwia przekonwertowanie wartoci zwrconych przez
funkcj  1   do postaci bardziej czytelnej. Z tego powodu czsto uywana
jest nastpujca kombinacja funkcji:
9  @UD$&
 :;
@(A  @UD//C :9P6QE9P#Q;

w ktrej funkcja  1   zwraca tablic, gdzie elementami s wartoci offsetw,


a funkcja ** - to obiekt okrelony tymi wartociami. Jak wida, funkcja
** - wymaga dwch argumentw: offsetBegin i offsetEnd, zwykle wyraanych w postaci pierwszego (czyli o indeksie 0) i drugiego (o indeksie 1) elementu tablicy.


  J 
 



Po wykorzystaniu funkcji ** - do pobrania zaznaczonego obiektu, moesz


uy go w innych funkcjach. W poniszym przykadzie, zaczerpnitym z polecenia Replicator (znajdujcego si na doczonym do ksiki CD-ROM-ie), wykorzystaem t
funkcj do sprawdzania, czy zaznaczono waciwe elementy (tekst) i jeli nie do
wywoania okna systemu pomocy:
 //  @UD$&
 :;
 @(A  @UD//C ://P6QE//P#Q;

/ :@(AD    C DGK>C@G; <


U0:;
=

 #'&&%%
Funkcja (**  jest przeciwiestwem funkcji ** -. Konwertuje
odnonik do obiektu na odpowiadajce mu offsety. Jest ona przydatna przy manipulowaniu czciami zaznaczenia, na przykad kilkoma znakami zaznaczonego tekstu.
W poniszym przykadzie, zaczerpnitym z polecenia Change Case (znajdujcego si
na doczonym do ksiki CD-ROM-ie), zaznaczony obiekt jest pobierany za pomoc
funkcji  1   i ** -, a funkcja (**  zapisuje go w tablicy, ktrej elementy mona zmienia na pisane wielkimi lub maymi literami za pomoc jednego kliknicia. Oto fragment kodu rdowego funkcji
4, konwertujcej zaznaczony tekst na tekst pisanym wielkimi literami:
   1D$ @U:  ;
 //  D$&
 :;
 C   D//C ://P6QE//P#Q;

/ :C D    C DGK>C@G; <  @//  +


D  @//:C ;
//P6Q  //P6Q  @//P6Q
//P#Q  //P#Q  @//P6Q
    C D 
C D    D(
$:6E//P6Q; N
 D(
$://P6QE //P#Q;D :; N
 D(
$://P#QE  D $;

Funkcja (**  zwraca dwie wartoci, wic moesz wykorzysta je jako argumenty funkcji  1  do zaznaczenia obiektu na stronie. Jeli chciaby zaznaczy pierwsze cze znajdujce si na stronie, mgby uy nastpujcego kodu:
   1D$ @U:  ;
 -
,  D
,P6Q
 //  D  @//:-
,;
D&
 ://P6QE//P#Q;

 !
"!#'%
Funkcja  3  jest czsto uywana wewntrz funkcji   , poniewa suy do przetwarzania acuchw tekstowych. Przez pojcie token okrelana jest
grupa znakw nie zawierajca adnego ze zdefiniowanych wczeniej separatorw. Separatory w funkcjach to nawiasy otaczajce ich argumenty i przecinki oddzielajce argumenty od siebie.



J 
 



Funkcja  3  wykorzystuje dwa argumenty: przetwarzany acuch i separatory,


a zwracane wartoci umieszcza w tablicy. Jako przykad wykorzystajmy nastpujcy
acuch tekstowy:
H
:M/ME M* /9
M;

Aby wydoby argumenty z takiego wywoania funkcji, uyj funkcji  3  w nastpujcy sposb:
$, : H
:M/MEM* /9
M;EM:;E;

Jeli przypiszesz warto tej funkcji do tablicy o nazwie , otrzymasz nastpujcy rezultat:
$9P6Q  M H
M
$9P#Q  M/M
$9P0Q  M* /9
M

Zwykle pierwszy element tablicy, czyli nazwa funkcji, jest pomijany.

 !
"!#)*&
Funkcja  9" )* jest wykorzystywana do pobierania specyficznych dla okrelonej przegldarki odwoa do obiektw i umieszczania ich w tablicy.
Funkcja  9" )* wymaga dwch argumentw. Pierwszy z nich przyjmuje
warto NS 4.0 lub IE 4.0, co oznacza, odpowiednio: Netscape Navigator 4.0 i Internet
Explorer 4.0, a drugi to badany znacznik. Zwracany acuch tekstowy okrela nazw
okrelonego znacznika w formacie wykorzystywanym w wybranej przegldarce. Np. jeli uyjesz funkcji  9" )* do pobrania odnonika do okrelonej warstwy
w przegldarce Netscape:
 @(AC&  1D$G B/:C& 4D6E $9P
Q;

zwrcona warto bdzie miaa posta:


 DPM 1-MQ

Ta sama warstwa w przegldarce Internet Explorer:


 @(AC&  1D$G B/:?G 4D6E $9P
Q;

bdzie okrelana przez warto:


 DD 1-#

Funkcje  9" )* i  ( )* zwracaj wykorzystywane w obu przegldarkach odnoniki do nastpujcych znacznikw: , ,  , ", '
 ,   ,  & ,   i ". Odnoniki do znacznikw ,  
i  
 s zwracane prawidowo dla Internet Explorera, a do znacznikw 
i  dla Netscape Navigatora. Odnoniki do znacznikw  i   z pozycjonowaniem bezwzgldnym s zwracane prawidowo dla Netscape Navigatora, ale
inne zwracaj tekst    *   (nie mona odwoa si do znacznika).


  J 
 



Nadawanie obiektom i warstwom nazw jest niezwykle istotne, szczeglnie


w przypadku opisywanych wyej funkcji. Dreamweaver nie zwrci odnonikw do
obiektw nie posiadajcych nazw, zwrci jedynie tekst
"  (znacznik
nie posiadajcy nazwy). Dreamweaver nie zwrci rwnie odnonika do obiektu
posiadajcego nazw, ale znajdujcego si w warstwie nie posiadajcej nazwy.
Dreamweaver automatycznie nadaje nazwy wstawianym do dokumentu warstwom,
ale nazwy formularzy projektant musi wpisa w inspektorze Property.

 !
"!#+,"!'
Funkcja   zwraca znacznik, do ktrego przyczony jest behawior.
Moe ona rwnie zosta doczona do tej czci kodu behawiora, ktra odpowiada za
jego konfiguracj, aby odpowiednio pokierowa dziaaniami uytkownika.
Funkcja   zwraca cay znacznik wraz z atrybutami, wartociami i tekstem otaczanym przez niego. Z tego powodu naley wydoby z wartoci funkcji jedynie
pewn cz informacji. Jedn z technik umoliwiajcych wykonanie tego zadania jest
wykorzystanie waciwoci  &(*, okrelajcej czy znacznik znajduje si w zwrconym acuchu tekstowym. Kod z poniszego przykadu sprawdza, czy zaznaczony
znacznik jest znacznikiem " i jeli nie informuje o tym uytkownika.
/ 




5 ?:;<
 $  1D$7
$:;D :;

/ :$D
@/:M?UHM; ' #;;<
 ?
A
5A
/A \,1
, (1

= <
: (1
 1$ 55 5
 (5,D;
=
=

Ta technika rni si od zastosowania funkcji     w celu


zablokowania dostpu do znacznika. Tu uytkownik zostanie poinformowany
o bdnym postpowaniu.

 !
"!#+,"!)
Innym sposobem sprawdzenia, jaki znacznik zosta zaznaczony dla behawiora, jest wykorzystanie funkcji  9" . Gwn rnic pomidzy t funkcj a opisywan wczeniej funkcj   jest fakt, e pierwsza z nich zwraca odnonik do znacznika wykorzystywany przez DOM, a druga jedynie znacznik. Majc
odnonik do znacznika wykorzystywany przez DOM, moesz uzyska sporo informacji
na temat samego znacznika i jego atrybutw.
Podobnie jak  , funkcja  9"  jest zwykle wykorzystywana do okrelenia, czy uytkownik zaznaczy waciwy znacznik. Jeli zaznaczony
jest niewaciwy znacznik, mona wywietli informacj na ten temat. Funkcja  '
9"  zwraca odnonik do znacznika lub warto
. Warto
 jest
zwracana w nastpujcych okolicznociach:



J 
 




funkcja nie zostaa wywoana ze skryptu uruchamianego przez inspektor Behavior;

behawior jest czci animacji timeline;

funkcja zostaa wywoana ze skryptu uruchamianego przez funkcj


"8 
  ;

funkcja zostaa wywoana przez inspektor Behavior doczajcy zdarzenia


do cza (*: !, ktre nie zostao jeszcze utworzone;

funkcja zostaa wywoana spoza behawiora.

W poniszym przykadzie zaoyem, e behawior musi zosta doczony do znacznika


osadzajcego na stronie procedur plugin z wywietlonym interfejsem:
/ 




5 ?:;<
 $  1D$7
G :;
 $H  :$D$C  GU7G ]] $D$9
(:X?GC; +
 ;

/ :$H ; <
 ^
/A \,1
,
= <
:$ (1

 \  5_[5Z  ,   $
D;
=
=

 !
"!#!
% ! -*.
Funkcja 8  ,)$ umoliwia uytkownikowi, zamiast wpisywania nazwy
pliku i cieki dostpu w polu tekstowym, wskazanie pliku w oknie dialogowym. Moesz okreli, czy ma zosta otwarte okno Open, Save czy Select, i poda tre etykiety
okna wywietlanej na jego pasku tytuowym. Moesz nawet wczy w oknie panel
Preview, w ktrym wywietlane bd miniaturki plikw graficznych. Niezalenie od
opcji, funkcja 8  ,)$ zwraca ciek dostpu i nazw pliku w postaci
wzgldnego adresu URL.
Funkcja 8  ,)$ wykorzystuje nastpujc skadni:
(1**
 B-:M@ MWM&MWM&ME MG,
 , ME W/;

Pierwszy argument, ( , 1 lub 1 , okrela typ okna dialogowego. W oknie typu
Select wywietlana jest dodatkowo informacja o katalogu gwnym witryny. Drugi argument okrela tre etykiety okna dialogowego. Jeli chcesz, aby pasek tytuowy okna
by pusty, musisz zastosowa dwa apostrofy:
(1**
 B-:M MEMME/;

Ostatni argument jest wartoci logiczn i okrela, czy w oknie ma zosta rwnie wywietlony panel Preview (taki, jaki wywietlany jest w oknie Select Image). Jeli nie
okrelisz treci etykiety okna i nadasz ostatniemu argumentowi warto true, na pasku
tytuowym okna wywietlona zostanie etykieta Select Source Image.
Funkcja 8  ,)$ jest zwykle umieszczana wewntrz innej funkcji wywoywanej przez zdarzenie  4 3 przyczone do przycisku Browse (Choose), ktry z kolei znajduje si obok pola tekstowego, w ktrym uytkownik moe wpisa adres pliku.


  J 
 



Do Dreamweavera doczana jest funkcja 8  (umieszczona w pliku _common.js)


wymagajca jednego argumentu, *1 ,)$ (pole, w ktrym ma zosta zapisany
adres). Przykadowy kod przycisku Browse (Choose) moe wyglda nastpujco:

  *


 71DDD (  +
 
,(1*
:  D*D*
D; ( 

Nastpnie funkcja 8  wywouje funkcj 8  ,)$, ktra otwiera
okno dialogowe Select File i jeli okno dialogowe zwrci nazw pliku przypisuje
j zmiennej. W funkcji 8  przedstawionej poniej zwrcona nazwa pliku jest
przypisywana do wartoci wywietlanej w okrelonym polu tekstowym.
/ 
 (1*
:/
 & B-;<
 /
C  
/
C  (1**
 B-:;     /
 

/ :/
C; /
 & B-D  /
C
=

Funkcja 8  ,)$ nie zwraca adresw URL w postaci bezwzgldnej.

 !
"!#/,
Dreamweaver wyposaony jest w kilka funkcji wspomagajcych operacje odczytu, edycji
i zapisu dokumentw. Jedn z nich jest  7
" ; . Zwraca ona ciek dostpu
do dokumentu. cieka zwracana jest w formacie file://URL, wic jeli wykorzystasz j
w odniesieniu do pliku c:\witryny\index.html, zwrci ona ciek file:// C|witryny.
Funkcja  7
" ;  wymaga okrelenia jednego argumentu dokumentu.
Mona tu uy nastpujcych okrele dokumentu: 
" ,  , 
*".
"0 lub  *". +8#"30, podobnie jak w przypadku funkcji
 7
" 7(6. Jeli dokument nie zosta zapisany, funkcja  7
" ; 
zwraca pusty acuch.

 !
"!#0&!/,
Katalog Configuration mona nazwa baz rozbudowywania Dreamweavera. Znajduj
si w nim nie tylko pliki HTML, takie jak behawiory i obiekty, ale rwnie inne pliki
kontrolujce wygld i dziaanie menu. Z tego powodu przydatna moe by moliwo
zlokalizowania folderu Configuration, aby mona byo uzyska dostp do znajdujcych
si w nim plikw. Do tego wanie celu suy funkcja  4 *
  ; .
Przykadowym zastosowaniem tej funkcji jest obiekt Rollover. Waciwie rollower nie
jest obiektem jest poleceniem. Funkcja  4 *
  ;  peni kluczow rol
w kodzie tej komendy, zapisanym w pliku rollover.js:
  B-  1D$ /
$
 I:; N +
 BD
   1D$ @U:  B- ;



J 
 



W pierwszej linii kodu funkcja  4 *


  ;  jest uyta do zlokalizowania
pliku Rollover.htm i przypisania do zmiennej cieki dostpu do niego. Umoliwia to
obiektowi pobranie DOM i manipulowanie nim za pomoc funkcji  7
" 7(6.
Funkcja  4 *
  ; , podobnie jak  7
" ; ,
zwraca ciek w postaci file://URL.

 !
"!#$*
Wikszo operacji zwizanych z zarzdzaniem witryn w Dreamweaverze opiera si
na zdefiniowaniu katalogu gwnego witryny. Moliwo okrelenia jego pooenia jest
wyjtkowo wana dla behawiorw lub innych rozszerze dziaajcych na poziomie katalogu gwnego witryny.
Funkcja  1 )  nie wymaga adnego argumentu, a zwraca adres katalogu gwnego witryny, w ktrej znajduje si aktualnie przetwarzany plik, w postaci file:// URL.
Jeli zwrcony zostanie pusty acuch, oznacza to, e plik nie zosta zapisany.

 !
"!#!%
Pracujc nad skomplikowanym dokumentem z wieloma elementami graficznymi, warstwami, tabelami i tekstem, obrabiasz duy plik HTML. Dostp do DOM takiego dokumentu moe spowodowa, e zajty zostanie duy obszar pamici. Zakoczenie pracy
behawiora powoduje automatyczne zwolnienie obszaru pamici zajmowanego przez
wykorzystywane przez niego dane, ale jeli behawior edytuje kilka duych dokumentw
jednoczenie, moe zaj ca pami przed zakoczeniem swojej pracy. Dziki funkcji
7
"  moesz zwolni obszar pamici zajmowany przez DOM okrelonego dokumentu.
Jedynym argumentem funkcji 7
"  jest DOM dokumentu, uzyskiwany
dziki funkcji  7
" 7(6. Dziaanie tej funkcji moesz zobaczy w pliku displayHelp.js sucym do wywietlania systemu pomocy kontekstowej.

 !
"!#!
%
Jeli plik pomocy bdzie zbyt duy, aby mona byo wywietli go w zwykym oknie
dialogowym, moesz wywietli go w oknie domylnej przegldarki internetowej. Funkcja 87
" umoliwia wywietlenie dowolnego pliku w przegldarce. Funkcja ta wymaga podania jednego argumentu cieki dostpu do wywietlanego pliku:
1D(1 :.111D
D(D;

Jak wspomniaem w rozdziale 18., moesz wykorzysta funkcj 87


"  do
wywietlenia pliku okrelonego bezwzgldnym adresem URL lub pliku znajdujcego
si na dysku lokalnym. Jeli chcesz wywietli plik znajdujcy si na dysku lokalnym,
musisz poczy dziaanie funkcji 87
"  z dziaaniem funkcji takiej jak  '
4 *
  ; . W poniszym przykadzie funkcje te zostay zastosowane w celu
wywietlenia pliku InsertMenu.htm:


  J 
 



/ 

U :; <
  I  1D$ /
$
 I:; N +
@(A? U D
1D(1 : I;
=

 !
"!#
 !
"!0!
Funkcje  7
" i  7
" maj podobne moliwoci i podobne ograniczenia. Funkcja  7
"  jest rwnoznaczna poleceniu FileOpen i wybraniu
pliku w oknie dialogowym. Funkcja  7
"  umoliwia stworzenie pustego
dokumentu na podstawie szablonu Default.htm. W obu przypadkach dokument jest
umieszczany w oknie dokumentu, ktre jest nastpnie wywietlane nad innymi oknami.
Funkcja  7
"  nie wymaga adnego argumentu, a zwraca DOM nowego
dokumentu. Ponisza definicja:
 C1  1D :;

jest rwnoznaczna z zastosowaniem funkcji  7


" 7(6 wobec pustego dokumentu.
Funkcja  7
"  wymaga argumentu w postaci file://URL. Jeli URL jest podawany
w postaci wzgldnej, to jest przyjmowany wzgldem pliku, z ktrego nastpio wywoanie funkcji. Np. jeli chcesz otworzy plik znajdujcy si w katalogu nadrzdnym
wzgldem katalogu Commands, musiaby odwoa si do niego w sposb nastpujcy:
1D  :DDG 
 D;

Za pomoc techniki omwionej w opisie funkcji 87


"  moesz odwoywa
si do plikw, adresujc je wzgldem katalogu Configuration.
Funkcje  7
"  i  7
" nie mog by wykorzystywane
w behawiorach, ale mog zosta wywoane z polecenia lub inspektora Property.
Dlatego moliwe jest wykorzystanie funkcji 
4""  do uruchomienia
polecenia wykorzystujcego funkcj  7
" lub  7
" .

 !
"!#%"
Po zakoczeniu modyfikacji pliku trzeba go zapisa. Do tego celu suy funkcja 7'

" . Funkcja ta wymaga podania dwch argumentw: documentObject i fileURL.
Pierwszy z nich okrela DOM zapisywanego dokumentu, a drugi adres, pod ktrym plik
ma zosta zapisany. W tym przypadku rwnie adres URL podawany jest wzgldem
pliku, z ktrego nastpio wywoanie funkcji.
Funkcja 7
" zwraca warto true, jeli zapisywanie pliku zakoczyo si
pomylnie, lub warto false, jeli operacja nie zostaa dokoczona. Jeli plik posiada
znacznik tylko do odczytu, Dreamweaver prbuje odblokowa go. Jeli proces ten si
nie powiedzie, wywietlony zostanie komunikat o bdzie.



J 
 



 !
"!#.*%
Szablony Dreamweavera to poczenie zablokowanych i edytowalnych obszarw (regions).
Zwykle obszary te okrela si w oknie dokumentu, ale moesz wykorzysta funkcj
 $ 3)  do programowego blokowania i odblokowywania obszarw. Funkcja  $ 3)  wymaga argumentu true, przy odblokowywaniu wszystkich
zablokowanych obszarw, lub argumentu false przy ponownym ich blokowaniu. Po
zakoczeniu dziaania funkcji, z ktrej nastpio wywoanie funkcji  $ 3)'
 , status wszystkich obszarw zostaje przywrcony do wartoci domylnych.
Z racji moliwoci wystpienia nieprzewidzianych efektw dziaania, firma
Macromedia zaleca, aby funkcja  $ 3)  bya wykorzystywana
jedynie w filtrach (translators).

 !
"!#1  !
"!#!0
Funkcje 
   i 
4""  nie mog by wykorzystywane w behawiorach,
ale umoliwiaj wzajemn wspprac innych rozszerze Dreamweavera. Za pomoc
tych funkcji mona wywoa istniejcy behawior lub polecenie i wywietli jego okno
dialogowe. Wyjtkiem jest sytuacja, gdy funkcje te s wykorzystywane do wywoania
behawiora lub polecenia z poziomu obiektu, innego polecenia lub inspektora Property.
Funkcja 
   wymaga dwch argumentw: nazwy pliku akcji i funkcji wywoujcej akcj. Plik akcji musi znajdowa si w katalogu Actions. Przykadowy kod
wywoujcy behawior Sound Control moe wyglda nastpujco:
 $&  1D9
 :  & DEUU> & :DD;;

Jeli chcesz wywoa akcj znajdujc si w podkatalogu katalogu Actions, musisz


okreli ciek dostpu do niej. Np. jeli chcesz wywoa jedn z akcji z grupy
Timeline, musisz wyrazi jej nazw w postaci Timeline/Go to Frame.htm.

Nazwa funkcji wywoujcej behawior znajduje si przy kocu funkcji ,


w miejscu, gdzie okrelana jest warto zwracana, lub w wartoci zwracanej przez
funkcj 
 . Funkcja 
   zwraca pen posta wywoania
funkcji, wraz z okrelonymi przez uytkownika parametrami. Kontynuujc poprzedni
przykad, jeli uytkownik wybra Play i wskaza plik brazil.mid, zmienna goCS bdzie
miaa nastpujc warto:
UU> & :MME  D&"##"480#6#"6DM(5
D
M;

Drugi argument to nazwa generowana przez program Dreamweaver.

Wszystkie te dane, z wyjtkiem procedury obsugi zdarzenia i odpowiadajcego jej


wywoania funkcji, s zapisywane do strony. Za obsug zdarzenia i wywoanie funkcji
odpowiada obiekt, polecenie lub inspektor Property.


  J 
 



Funkcja 
4""  jest nieco prostsza. Wymaga tylko jednego argumentu, nazwy
pliku polecenia. Plik ten musi znajdowa si w katalogu Commands. Funkcja 
4"'
"  nie zwraca adnej wartoci. Uruchamia jedynie podane polecenie.

 !
"!#2'("
 !
"!#"'.2
Dreamweaver posiada dwie funkcje uatwiajce dostosowanie behawiorw do pracy
w rnych wersjach jzykowych systemw operacyjnych. W wielu krajach wykorzystywane jest inne kodowanie znakw ni standardowo wykorzystywany w Stanach
Zjednoczonych i wikszoci krajw Europy Zachodniej Latin1.
Aby przekonwertowa acuch tekstowy z kodowania Latin1 na kodowanie wykorzystywane w systemie operacyjnym zainstalowanym na komputerze uytkownika, wykorzystaj funkcj   <- . Argument, czyli acuch tekstowy, powinien zosta
wczeniej przetumaczony na odpowiedni jzyk. Aby dokona odwrotnej konwersji, zastosuj funkcj  $  <.
@adna z tych funkcji nie zadziaa poprawnie w systemie Windows bazujcym
na kodowaniu Latin1.

 !
"!#!"'1%-*.
Poniewa coraz wicej programw umoliwia tworzenie plikw HTML (przykadami
mog by Fireworks i Director 7), behawiory i inne rozszerzenia mog zosta wykorzystane do obsugi tak stworzonych dokumentw. Czsto niezbdne jest okrelenie bezwzgldnego adresu URL takiego pliku w celu pobrania jego DOM-u lub otwarcia go.
Funkcja  
,)$ zwraca tak informacj na podstawie trzech argumentw:


docBaseURL. Fragment cieki dostpu do dokumentu z wyczeniem nazwy


pliku. Na przykad, jeli analizowanym plikiem byby plik images/austria.gif,
argument docBaseURL przyjby warto images/.

siteRootURL. Adres URL katalogu gwnego witryny, zwrcony przez funkcj


 1 ) .

relativeURL. Peny wzgldny adres URL badanego pliku, na przykad


images/austria.gif.

Skadnia funkcji wyglda nastpujco:


 ( B-  1D
9( B-: 7 B-E
B B-E
 B-;

Okrelenie wartoci argumentu docBaseURL moe by nieco kopotliwe. Po okreleniu


wartoci argumentu relativeURL za pomoc funkcji 8  ,)$, musisz wydoby z niej fragment znajdujcy si przed nazw pliku. Aby to zrealizowa, uyj funkcji
 % &(* do znalezienia znaku / i wydobycia znajdujcego si przed nim acucha.
Oto przykad:
/ 
 7:; <
  B-  1D$ I:  ;



J 
 



   B-D? @/:MM;

/ : # 
 ;<  AY

  ,Y
 ,$
   51`Z  _a
=
 <
  B-D(
$:6E
;
=
=

,&- 
 
Wikszo funkcji znajdujcych si w API dla behawiorw poznae ju, czytajc podrozdzia Stwrz plik akcji. Ta cz API jest wykorzystywana podczas pisania behawiorw. Umieszczone w tej czci funkcje zostay wyszczeglnione w poniszej tabeli.
Funkcja

Zadanie funkcji

 97
:;

Okrela, czy akcja jest dostpna dla zaznaczonego znacznika

1
1
 
 :;

Definiuje rozmiary okna dialogowego behawiora

7
:;

Docza funkcj do zaznaczonego znacznika

7
:;

Przywraca wpisane poprzednio wartoci do pl okna dialogowego

(
* 
 :;

Zapisuje funkcj do sekcji   dokumentu HTML

7
:;

Usuwa behawior z pliku HTML

 
/7
9$ :;

Zapisuje te argumenty behawiora, ktre powinny zosta


zmodyfikowane, gdy plik jest umieszczany w innym obszarze dysku


X:;

Umieszcza w oknie dialogowym behawiora przycisk Help

Funkcje    , ,    i 


'
  zostay omwione w poprzednich podrozdziaach. Poniej znajduj si opisy pozostaych funkcji.



%
Za pomoc funkcji 8 87"   mona okreli rozmiary okna dialogowego behawiora, co moe przyspieszy jego wywietlanie. Jeli funkcja ta nie znajduje si
w kodzie behawiora, rozmiary okna s wyznaczane automatycznie. Funkcja wymaga
okrelenia jednego argumentu, platform, okrelajcego system operacyjny Windows lub
MacOS. Zwracan wartoci jest acuch tekstowy zawierajcy szeroko i wysoko
okna dialogowego wyraone w pikselach. Oto przykad:
/ 
 1
1
 
 :/;<

/ :/D9:6;  MM;<  U



 8!6E!66
=
 <  V
1 "! ( C
 83!E!0!
=
=


  J 
 



Funkcja ta zostaa zastosowana w kilku behawiorach doczanych do Dreamweavera.


Firma Macromedia zaleca, aby uywa j jedynie w sytuacji, gdy okno dialogowe ma
by wiksze ni 640480.

 +,"!
Zwykle Dreamweaver automatycznie usuwa z kodu strony obsug zdarzenia i funkcje
JavaScript w momencie, gdy uytkownik kliknie przycisk Remove Behavior w inspektorze Behavior. Jednak gdy behawior jest skomplikowany i dodaje do kodu rdowego
strony dodatkowe elementy, niezbdne jest wykorzystanie funkcji  .
Najatwiej bdzie zrozumie dziaanie tej funkcji, analizujc przykady.
Funkcja   jest wykorzystywana w dwch standardowych behawiorach:
Control Sound i Swap Image. Behawior Control Sound wstawia do kodu strony znacznik
" z atrybutem ID. Aby usun ten zapis z dokumentu HTML, funkcja  '
 odczytuje acuch wywoania funkcji (taki, jak zwracany jest przez funkcj
). Jeli funkcja znajdzie znacznik " z okrelon wartoci atrybutu ID, do ktrego nie odwouje si aden inny element strony, usuwa go z kodu strony. W kodzie rdowym behawiora Control Sound wyglda to nastpujco:
/ 
 7
:/ &; <
 $9E CE E$9E
E( C
$9  9$:/ &;

/ :$9D $  0; <
 C  1D$, :$9P0QED;P#Q  +
  DE  
 
*
 GU7G   1  :   1
 &;E  +
  
  1D$ @U:  ; $ 
$9  D$G 7$C:GU7G;
/ :
6
$9D $
NN; < 1
  GU7G $
( C  $9P
QD 

/ :( C   C; < 
/  (

/ : #  D( DXU-D
@/: $9P0Q ; ;   ( +
/M  1 
$9P
QDXU-  
(,
= = =
=

Behawior Swap Image nie dodaje do kodu strony dodatkowych znacznikw, ale wstawia dodatkowe zdarzenia umoliwiajce dziaanie rollowera. Kiedy behawior Swap
Image jest usuwany ze strony, usunite musz zosta rwnie te zdarzenia. Aby to zrealizowa, funkcja   przeszukuje acuch tekstowy wywoania funkcji
behawiora w poszukiwaniu argumentu PreloadID. PreloadID to nazwa nadawana przez
program w momencie, gdy uytkownik zaznaczy w oknie dialogowym behawiora opcj
Preload. Jeli argument ten zostanie znaleziony, z kodu usuwane jest wywoanie funkcji
realizujcej adowanie obrazkw do pamici podrcznej przegldarki  $66#
%". Nastpnie funkcja   sprawdza, czy wczona zostaa
opcja Restore, a jeli tak, usuwa jej kod oraz wywoujce j zdarzenie.



J 
 



 &+,"!1!%
Jeli kiedykolwiek przenosie witryn z jednego katalogu do innego, to wiesz na pewno, ile pracy wymaga sprawdzenie poprawnoci czy po takiej operacji. Dreamweaver
uatwia to zadanie. Jeli zapiszesz plik za pomoc polecenia Save As, wszystkie cieki
w atrybutach znacznikw HTML s automatycznie aktualizowane. Dreamweaver umoliwia wykorzystanie podobnych moliwoci w adresach URL znajdujcych si w kodzie
rdowym behawiora.
Wyobra sobie, e stworzye stron, do ktrej dodae behawior Check Browser, aby
skierowa uytkownikw rnych przegldarek na odpowiednie strony. Jeli zapisaby
t stron w innym katalogu, Dreamweaver automatycznie uaktualniby adresy stron.
Aby mogo to nastpi, musisz doda do kodu behawiora funkcj  *'

" . Funkcja ta przekazuje argumenty behawiora do Dreamweavera, ktry dziki
temu moe uaktualni wystpujce w nich adresy URL. Funkcja ta umoliwia rwnie
znalezienie wykorzystywanych przez behawior warstw, ktre Dreamweaver musi
uwzgldni przy realizowaniu polecenia Convert Layers to Tables.
Argumentem funkcji  *
"  jest acuch tekstowy zawierajcy
wywoanie funkcji behawiora wraz z argumentami. Argumenty te s wydobywane
z acucha i umieszczane w tablicy. Funkcja rozpoznaje, ktre z nich s adresami URL,
ktre okreleniami warstw, a ktre innymi elementami. Zwracane s cztery wartoci:


URL jeli argument jest okreleniem pliku lub cieki dostpu do pliku;

NS4.0ref jeli argument okrela warstw w skadni uywanej w przegldarce


Netscape 
" .=/$</=0;

IE4.0ref jeli argument okrela warstw w skadni uywanej w przegldarce


Internet Explorer 
" .=/<=/0;

Other jeli argument nie jest adnym z powyszych.

Funkcja  *


"  wykorzystywana jest w behawiorze Check Plugin:
/ 

 
/7
9$ :/ &; <
 $9
$9  9$:/ &;

/ :$9D $  !; <
 E B-E B-E
=
=

Podobnie jak w przypadku funkcji   , liczba elementw tablicy jest
o jeden wiksza od liczby argumentw. Pierwszym elementem tablicy jest nazwa funkcji.

 %3
Funkcja 5 powoduje umieszczenie w oknie dialogowym behawiora przycisku
Help. Przycisk ten jest umieszczany poniej przyciskw OK i Cancel. Funkcja ta nie wymaga adnych argumentw i jest zwykle wykorzystywana do wywietlania pliku pomocy.
Najczciej uywa si jej w poczeniu z metod   i funkcj 87
" .


  J 
 



Aby wywietli krtki komunikat, zastosuj metod  :


/ 

X:; <
: (1
 5
_ , 5 
,
D/D;
=

Jeli chcesz wywietli duszy tekst, uyj funkcji 87


" :
/ 

X:; <
1D(1 :.111D
DD;
=

Za pomoc funkcji 87


"  moesz rwnie wywietla pliki znajdujce si
na dysku lokalnym. Opis funkcji 87
"  znajdziesz we wczeniejszej czci
tego rozdziau.
Nie wywouj z behawiorw funkcji znajdujcej si w pliku displayHelp.js. Ta funkcja
jest wykorzystywana przez Dreamweavera do wywietlania systemu pomocy.

  


W jzykach zorientowanych obiektowo funkcj tworzy si raz, a pniej uywa si jej
w razie potrzeby. Dreamweaver posiada du bibliotek gotowych i bardzo uytecznych
funkcji, znajdujc si w katalogu Shared/Macromedia/Scripts/CMN. Funkcje te s pogrupowane w kategorie i zapisane w plikach JavaScript. W katalogu znajduje si 13 plikw, w tym docInfo.js, DOM.js, file.js i string.js. S one wykorzystywane w behawiorach doczonych do Dreamweavera, ale moesz rwnie zastosowa je w swoich. Aby
mc ich uywa, musisz wstawi do kodu JavaScript behawiora dodatkow lini:

 DDDD& UU&
UC
$DA


W tabeli 20.3 znajdziesz krtkie opisy niektrych funkcji znajdujcych si w folderze


Shared wraz z nazw pliku, w ktrym moesz je znale.

  


 
Aby utworzy behawior, zwykle nie wystarczy poczy kilku gotowych funkcji. Istnieje wiele technik stosowanych do okrelonych celw. Jeli ich nie poznasz, spdzisz
mnstwo czasu, ponownie wymylajc koo. Czytajc ten podrozdzia, poznasz kilka
technik, dziki ktrym bdziesz mg szybciej i sprawniej tworzy behawiory.

)
/
 

W Dreamweaverze kady znacznik, do ktrego mona doczy behawior, posiada domylnie okrelone zdarzenie. Moesz zmieni domylne zdarzenia dla znacznikw, modyfikujc pliki znajdujce si w katalogu Events, ale zmiana ta bdzie obowizywaa
jedynie w Twoim systemie, a nie w systemach innych uytkownikw. Moesz jednak
okreli zdarzenie, a waciwie grup zdarze, z poziomu behawiora.



J 
 



 
! Pozostae funkcje
Funkcja

Plik

Opis

9$:;

string.js

Wydobywa z wywoania funkcji argumenty i umieszcza je


w tablicy

O:;

string.js

Przeglda acuch i wstawia znak / przed kadym


apostrofem, cudzysowem i ukonikiem

 O:;

string.js

Usuwa znaki / z acucha

(1*
:;

file.js

Otwiera okno dialogowe Select File i umieszcza ciek


dostpu do wskazanego pliku w okrelonym polu tekstowym


&:;

menuItem.js

Usuwa znaki * z koca acucha


L:;

menuItem.js

Usuwa okrelone wartoci z koca acucha

 &U ?:;

menuItem.js

Dodaje znak * do zaznaczonego elementu menu

 LU ?:;

menuItem.js

Dodaje okrelon warto do zaznaczonego elementu menu


C:;

niceName.js

Zmienia odwoania do obiektw wykorzystywane przez


JavaScript, na przykad  DPM -MQ
D  D* na bardziej czytelne: / *

  -

B :;

niceName.js

Wydobywa nazwy obiektw i numery elementw tablicy

U$:;

errmsg.js

czy acuchy podane jako argumenty. Przykadowo


U$:5  5 _ b  bE#E0; zwrci tekst
Teraz nadszed czas na odpoczynek, jeli zmiennej var1
przypisano warto czas, a zmiennej var2 warto odpoczynek

/
@(A:;

UI.js

Zwraca odwoanie do wskazanego obiektu w formacie


wykorzystywanym przez JavaScript. Np. jeli w warstwie
onLayer znajduje si obrazek imgOne, funkcja /
@(A
:
$@ ; zwrci  DPM -MQD
$@ 

$I:;

string.js

Zwraca tablic zawierajc nazwy obiektw znajdujcych si


wewntrz okrelonego znacznika

( :;

string.js

Usuwa z acucha nieprawidowe znaki: ~!@#$%^&*()_+|`=\\{}[]:\;<>,./ oraz spacje

$9@(AB/:;

docInfo.js

Zwraca tablic skadajc si z odnonikw do obiektw


dla okrelonego znacznika, znajdujcych si wewntrz
aktualnego dokumentu lub we wszystkich ramkach

$9@(A$:;

docInfo.js

Zwraca tablic zawierajc znaczniki dla okrelonego obiektu,


znajdujce si wewntrz aktualnego dokumentu lub we
wszystkich ramkach

Okrelenie zdarzenia znajduje si w funkcji    . Zwykle funkcja ta


zwraca warto true lub false w zalenoci od tego, czy spenione s warunki niezbdne
do uruchomienia behawiora. Jeli warunki s spenione, a dodatkowo chcesz okreli,
jakie zdarzenie ma zosta zastosowane, moesz tak zdefiniowa funkcj    '
, by zwrcia ona acuch skadajcy si z nazw zdarze.


  J 
 



Kod z poniszego przykadu analizuje stron i jeli znajdzie na niej warstw, zmienia domylne zdarzenie na  >78 .
/ 
  97
:;<
 9  1D$@(AB/:C& 4D6E  E-9FGB;

/ : 9D $  6;<
  ^1 
=<
 *9-&G
=

Moliwe jest rwnie okrelenie grupy zdarze. Wana jest tu kolejno od najmniej
podanego do najwaniejszego:
  ^1 E ^IE ^ 

Jeli jedno ze zdarze jest niedostpne (na przykad w danej wersji przegldarki), wybierane jest nastpne zdarzenie z listy.


/
Wikszo zdarze nie wymaga, aby zwrcona zostaa do nich warto, ale niektre
z nich, takie jak  6
( i  6
(
, tego wymagaj. Zwykle w behawiorach nie
jest to uwzgldniane, ale jest moliwe. Moesz zrealizowa to, deklarujc zmienn '

" 66#
 
. Dziaanie tej zmiennej widoczne jest w behawiorze Set Text of
Status Bar.
Zmienna 
" 66#
  jest deklarowana w ostatniej linii definicji funkcji. Kod funkcji wyglda nastpujco:
/ 
 UU>
&U$:$&; < 0D6
$&
 DUU> L  
=

Oczywicie, zwracana warto moe by rwnie rwna false.

0 
#
"    
Moliwo zwracania przez funkcje wywoa innych funkcji wprowadzono ju w Dreamweaverze 1.2. Wczeniej funkcje w behawiorach nie mogy wywoywa adnych
funkcji pomocniczych. Teraz mona zrealizowa to za pomoc funkcji 
'
 . Wszystkie zwracane funkcje s zapisywane w dokumencie wewntrz znacznika    !  .
Wywoywanie jednej funkcji przez drug jest atwe do zrealizowania. Najpierw wymie
funkcje w licie w funkcji 
 , oddzielajc je przecinkami. Pamitaj,
aby funkcja, ktra ma by wywoywana przez zdarzenie, bya ostatni pozycj na licie.
Wida to w poniszym fragmencie kodu, zaczerpnitym z napisanego przeze mnie behawiora Resize Layer Patch:



J 
 


/ 
 (
* 
 :;<
 ME
5IM
=

Tu gwn funkcj jest funkcja +; , wykorzystana w funkcji :


/ 
 7
:; <
 M
5I:;M 51`Z 11_
 / ,A
5 $ 

  
Napisanie behawiora nie jest atwym zadaniem, ale daje du satysfakcj, zarwno
twrcy, jak i uytkownikowi. Dreamweaver umoliwia zautomatyzowanie tworzenia
zaawansowanych elementw strony dziki dostpowi do obiektowego modelu dokumentu. Poniej zamieciem kilka uwag podsumowujcych wiadomoci zawarte w niniejszym rozdziale.


Jeli moesz wykona co za pomoc JavaScriptu, moesz stworzy behawior


automatyzujcy t czynno.

Dreamweaver posiada rozbudowany DOM (Document Object Model


obiektowy model dokumentu), ktry umoliwia programicie dostp
do niemal kadego elementu strony.

Tworzc akcje, moesz wykorzysta wbudowane w Dreamweavera rozszerzenia


JavaScript i funkcje z API.

Rozszerzenia JavaScript wbudowane w Dreamweavera umoliwiaj otwieranie


istniejcych dokumentw oraz tworzenie nowych.

Wiele uytecznych funkcji mona znale w katalogu


Configuration/Shared/CMN.

W nastpnym rozdziale nauczysz si dostosowywa Dreamweavera do swoich potrzeb


za pomoc dodatkowych polece, inspektorw Property i innych elementw.

You might also like