Informacje o menu kontekstowych w treści HTML (AIR)
Adobe AIR 1.0 i starsze wersje
W treści HTML wyświetlanej za pomocą obiektu HTMLLoader można użyć zdarzenia
contextmenu
do wyświetlenia menu kontekstowego. Domyślnie menu kontekstowe wyświetlane jest automatycznie, kiedy użytkownik wywoła zdarzenie menu kontekstowego dla zaznaczonego tekstu (klikając na tekst prawym przyciskiem myszy lub z wciśniętym klawiszem Command). Aby zapobiec otwarciu domyślnego menu, należy wykryć zdarzenie
contextmenu
, a następnie wywołać metodę
preventDefault()
obiektu zdarzenia:
function showContextMenu(event){
event.preventDefault();
}
Użytkownik może następnie wyświetlić niestandardowe menu kontekstowe za pomocą technik DHTML lub wyświetlając rodzime menu kontekstowe środowiska AIR. Poniższy przykład ilustruje wyświetlanie rodzimego menu kontekstowego przez wywołanie metody
display()
menu w odpowiedzi na zdarzenie
contextmenu
HTML:
<html>
<head>
<script src="AIRAliases.js" language="JavaScript" type="text/javascript"></script>
<script language="javascript" type="text/javascript">
function showContextMenu(event){
event.preventDefault();
contextMenu.display(window.nativeWindow.stage, event.clientX, event.clientY);
}
function createContextMenu(){
var menu = new air.NativeMenu();
var command = menu.addItem(new air.NativeMenuItem("Custom command"));
command.addEventListener(air.Event.SELECT, onCommand);
return menu;
}
function onCommand(){
air.trace("Context command invoked.");
}
var contextMenu = createContextMenu();
</script>
</head>
<body>
<p oncontextmenu="showContextMenu(event)" style="-khtml-user-select:auto;">Custom context menu.</p>
</body>
</html>
|
|
|