Element, który stosujemy w przypadku rozwijanej listy wyboru. Użytkownik może zaznaczyć jedną z pozycji wyświetlanych w elemencie menulist
. Aktualnie zaznaczona pozycja zostanie wyświetlona na elemencie menulist
. Aby utworzyć listę rozwijaną, umieść element menupopup
wewnątrz menulist
składający się z elementów wyboru menuitem
.
Dodatkowe informacje są dostępne w kursie XUL.
- Atrybuty
- accesskey, crop, disableautoselect, disabled, editable, focused, image, label, open, preference, readonly, sizetopopup, src, tabindex, value
- Własności
- accessible, crop, description, disableautoselect, disabled, editor, inputField, label, menuBoxObject, menupopup, open, selectedIndex, selectedItem, src, tabIndex, value
- Metody
- appendItem, insertItemAt, removeAllItems, removeItemAt, select
Przykłady
<menulist> <menupopup> <menuitem label="Opcja 1" value="1"/> <menuitem label="Opcja 2" value="2"/> <menuitem label="Opcja 3" value="3"/> <menuitem label="Opcja 4" value="4"/> </menupopup> </menulist>
Atrybuty
-
accesskey
- Typ: znak
- Powinien być ustawiony na literę, która zostanie zastosowana jako klawisz dostępu. Litera ta powinna być jedną z liter, które są wyświetlane w etykiecie tekstowej (
) dla elementu.label
Przykład
<vbox> <label value="Enter Name" accesskey="e" control="myName"/> <textbox id="myName"/> <button label="Cancel" accesskey="n"/> <button label="Ok" accesskey="O"/> </vbox>
Zobacz także
Atrybut label
, atrybut acceltext
-
crop
- Typ: jedna z poniższych wartości
- Jeśli etykieta elementu jest zbyt duża by zmieścić się w danym miejscu, to jej tekst zostanie skrócony po stronie określonej przy pomocy atrybutu
crop
. Wycięty fragment tekstu zostanie zastąpiony wielokropkiem. Jeśli kierunek pudełka jest określony w lewą stronę, to skrócenie tekstu nastąpi w tym samym kierunku (czyli z lewej strony):
-
start
: Tekst będzie skrócony z lewej strony. -
end
: Tekst będzie skrócony z prawej strony. -
left
: Tekst będzie skrócony z lewej strony. -
right
: Tekst będzie skrócony z prawej strony. -
center
: Tekst będzie skrócony w środku, pokazując oba końce: początek i koniec normalnego tekstu. -
none
: Tekst nie będzie skrócony przy zastosowaniu wielokropka. Jednakże, tekst skrócony zostanie po prostu obcięty, jeśli będzie za duży. Strona skrócenia owego tekstu zależy od rozmieszczenia tekstu określonego w arkuszu stylów CSS.
menupopup > menuitem, menupopup > menu { max-width: none; }
-
disableautoselect
- Typ: boolean
- Jeśli ten atrybut jest
true
lub pominięty, zaznaczona pozycja w menu będzie aktualizowana dopasowując się do tego co użytkownik wprowadzi w polu tekstowym. Jeśli tekst nie dopasuje się do jakiejkolwiek pozycji na liście, to zaznaczenie zostanie wyczyszczone. Jeśli ten atrybut jestfalse
, zaznaczenie nigdy nie zostanie zaktualizowane do dopasowania pola tekstowego. Ten atrybut zastosowany jest tylko domenulist
, który jest zdolny do edycji.
-
disabled
- Typ: boolean
- Określa, czy element jest wyłączony. Jeśli atrybut ten ma wartość
true
, to element będzie wyłączony. Wyłączone elementy zazwyczaj są wyszarzone. Jeśli element jest wyłączony, nie odpowiada na czynności użytkownika, nie może zostać na niego ustawiony focus, a zdarzenie command nie zostanie wywołane.
<!-- Pole wyboru włącza/wyłącza przycisk --> <checkbox label="Enable button" onclick="document.getElementById('buttRemove').disabled = this.checked"/> <button id="buttRemove" label="Remove All" disabled="true"/>
-
editable
- Typ: boolean
- Sygnalizuje, która wartość
menulist
może być modyfikowana poprzez wpis bezpośrednio do wartości pola. This is rendered as a textbox with a drop-down arrow beside it. The user may enter text into the textbox or select one of the choices by clicking from the drop-down. If used in a tree, editable allows the content to be changed, especially useful whentype="checkbox"
.
-
focused
- Typ: boolean
- Ten atrybut jest ustawiony na
true
, jeśli element jest aktywny (focused).
-
label
- Typ: string
- Etykieta, która zostanie wyświetlona na elemencie. Jeśli zostanie on usunięty, to żaden tekst nie zostanie wyświetlony.
-
open
- Typ: boolean
- Dla przycisków o
type
ustawionym namenu
, atrybutopen
jest ustawiany natrue
, kiedy menu jest otwarte. Atrybutopen
nie jest obecny, jeśli menu jest zamknięte.
-
preference
- Typ: id elementu
- Łączy dany element z odpowiadającym mu elementem
preference
. Atrybut ten ma skutek tylko wewnątrz oknaprefwindow
. Wartość opcji (z elementupreference
) zostanie zaktualizowana zgodnie z wartością własnościvalue
tego elementu.
-
readonly
- Typ: boolean
- Jeśli ustawiony jest na
true
, to użytkownik nie będzie mógł zmienić wartości elementu. Jednakże wartość wciąż może zostać zmodyfikowana poprzez skrypt.
-
sizetopopup
- Typ: jedna z poniższych wartości
- Indicates how the menu width and the
menupopup
width are determined. If thesizetopopup
attribute is left out or set tonone
, the menu will be its preferred width and the popup may extend outside of this width, unaffected by the maximum width of the menu itself.
-
none
: Szerokość okienka popup nie będzie ograniczało rozmiaru menu. -
always
: Jeśli jest ustawiony naalways
, długość menu będzie taka sama jaka jest potrzebna dla elementumenupopup
. Jeśli menu posiada maksymalna szerokość, to popup będzie miał tą samą szerokość.
-
src
- Typ: URL
- Adres URL zawartości do wyświetlenia w elemencie.
-
tabindex
- Typ: integer
- Porządek dla przełączania elementów klawiszem Tab. Elementy o wyższym tabindex umieszczane są w dalszej części sekwencji przełączania.
-
value
- Typ: string
- Atrybut łańcucha znaków pozwalający na współpracę wartości danych z elementem. Nie jest stosowany dla określenia jakiegoś konkretnego celu, lecz można go wykorzystać w skrypcie do własnego użytku.
Własności
-
accessible
- Typ: nsIAccessible
- Zwraca obiekt dostępności dla elementu.
-
description
- Typ: string
- Ustawia opis aktualnie zaznaczonej pozycji
menuitem
.
-
disableautoselect
- Typ: boolean
- Pobiera i ustawia wartość atrybutu
disableautoselect
.
-
selectedIndex
- Typ: integer
- Zwraca indeks aktualnie zaznaczonej pozycji. Można zaznaczyć pozycję przypisując jej numer indeksu do własności. Przydzielając
-1
do tej własności, wszystkie pozycje zostaną odznaczone.
-
selectedItem
- Typ: element
- Podtrzymuje aktualnie zaznaczoną pozycję. Jeśli nie ma zaznaczonych aktualnie pozycji, to jej wartość równa będzie
null
. Możemy zaznaczyć pozycję poprzez ustawienie tej wartości. Zmiana zdarzenia będzie przesyłana do zaznaczonej pozycji, kiedy zmieniona zostanie jedna z tych własności, własnośćselectedIndex
lub zmieniona będzie przez użytkownika.
Metody
-
appendItem( label, value )
- Zwraca typ: element
- Tworzy nową pozycję i dodaje ją na koniec istniejącej listy pozycji. Opcjonalnie posiada ustawioną wartość. Funkcja zwraca nowo utworzony element.
-
insertItemAt( index, label, value )
- Zwraca typ: element
- Ta metoda tworzy nowy element listy i umieszcza go w określonej pozycji. Opcjonalnie można ustawić jego wartość. Nowy element jest zwracany.
-
removeAllItems()
- Zwraca typ: nie zwraca wartości
- Usuwa wszystkie pozycje w menu.
-
removeItemAt( index )
- Zwraca typ: element
- Usuwa pozycję potomną w elemencie o określonym indeksie. Metoda zwraca usuniętą pozycję.
- select()
- Zwraca typ: nie zwraca wartości
- Zaznacza cały tekst w polu tekstowym
menulist
. Ta metoda nakłada się tylko do list menueditable
.
Podobne
- Elementy
-
menu
,menubar
,menuitem
,menupopup
,menuseparator
- Interfejsy
- nsIAccessibleProvider, nsIDOMXULMenuListElement