Użycie obiektu Window w JavaScript

Window jest obiektem odpowiadającym oknu, w którym wyświetlana jest strona WWW. Okno takie może być tworzone dynamicznie.
Nie jest to obiekt JavaScript i nie jest zdefiniowany przez specyfikację W3C DOM. Jest to standard de facto.

Atrybuty i metody okna interfejsu są rozpoznawane przez Internet Explorer 4, Firefox 1, Opera 9, nowsze wersje i Safari. Ten dokument jest oparty na tym, co jest obsługiwane przez przeglądarki w przypadku braku oficjalnego standardu, patrz referencje.

Do bieżącego okna odwołuje się słowo kluczowe window, a do okien dynamicznie tworzonych nazwa nadana obiektowi przypisanemu przez wartość zwrotną metody open.

Definicje i testowanie atrybutów i obiektów wewnętrznych w oknie

Definicje atrybutów i objetów wewnętrznych

Te atrybuty można odczytać tylko dla niektórych, ich wartość można przypisać w innych przypadkach.

frames Ramki w oknie. Tylko do odczytu. length Ilość ramek. Tylko do odczytu. name Nazwa okna. status Tekst paska stanu
W przeglądarce Firefox modyfikacja tekstu jest możliwa. Przejdź do sekcji Opcje, Zawartość, JavaScript i kliknij przycisk Zaawansowane. Następnie zaznacz pole obok „Zmień tekst paska stanu”. defaultStatus Domyślny tekst w pasku stanu. closed Stan zamknięty lub nie. opener Odwołanie do okna, które otworzyło to okno. Przykład:

x = window.opener;

parent Rodzic okna Rodzic okna. Przykład:

x = mywin.parent;

top Rodzic Rodzic najwyższego poziomu.

Obiekty w oknie

Te obiekty mają swoje własne atrybuty i metody, które nie są tutaj szczegółowo opisane, ale mają swoją własną stronę.

document Odnosi się do strony, która jest zawarta w oknie. Dokument. history Lista stron poprzednio oglądanych w tym samym oknie. History. location Określa adres URL strony, która zawiera okno. Lokalizacja. screen Ekran i jego właściwości: width, height, availWidth, availHeight, colorDepth.

Patrz także właściwości tworzenia okien w rozdziale: Otwieranie nowego okna w JavaScript.

Sprawdzanie właściwości obiektu Windows w przeglądarce

Właściwości nieobsługiwane przez przeglądarkę są niezdefiniowane.
Niektóre właściwości są używane jako parametry konstruktora okna, ale nie są one bezpośrednio dostępne i nie są tutaj wymienione.

innerWidth innerHeight

outerWidth outerHeight

locationbar menubar personalbar statusbar toolbar scrollbars

pageXOffset pageYOffset

screenX screenY

directories

status defaultStatus

opener

parent

top

name

length

Nie działa z Firefox 7

offscreenBuffering

Możemy uzyskać równoważne wartości w Internet Explorerze i we wszystkich przeglądarkach:

document.body.clientHeight

document.body.clientWidth

document.body.offsetHeight

document.body.offsetWidth

document.documentElement.offsetHeight

document.documentElement.offsetWidth

Others

Crypto

Ostrzeżenie: Deklaracja DOCTYPE może mieć wpływ na te wartości.

Metody okien i dema

Metody otwierania lub zamykania okien zostały opisane w rozdziale: Otwieranie nowego okna w JavaScript.

Definicje metod alert(message) Wyświetla komunikat. x = prompt(message) Przedstawia okno dialogowe z prośbą o odpowiedź użytkownika i zwraca odpowiedź. x = confirm(message) Wyświetla komunikat, zwykle pytanie, z dwoma przyciskami do potwierdzenia lub anulowania. Zwraca wartość true lub false. resizeTo(w, h) Zmienia szerokość i wysokość. scrollTo(x, y) Przewijanie musi być włączone dla okna zgodnie z flagą scrollbars, tak jest domyślnie. moveTo(x, y) Przesuwa na podaną pozycję. id = setInterval(wyrażenie, milisekundy) Wywołuje wyrażenie wielokrotnie zgodnie z czasem w interwale. clearInterval(id) Wyczyść interwał. id = setTimeout(expression, milliseconde) Wykonaj wyrażenie po upływie terminu. clearTimeout(id) Wyczyść opóźnienie. focus() Przekaż fokus do okna. blur() Wyłącz fokus do bieżącego/podanego okna. createPopup() Utwórz podokno. print() Rozpocznij drukowanie zawartości okna. Demonstracja metod okna HTML Objekt Kliknij na przycisk, aby zobaczyć jak działa dana metoda. Odpowiedni kod jest wyświetlany po prawej stronie.

Zobacz także

Przykład użycia setTimeout jest zawarty w demie lightbox z efektem fade in.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.