在使用 HTMLLoader 物件顯示的 HTML 內容中,
contextmenu
事件可用來顯示快顯選單。 當使用者對所選取的文字叫用 contextmenu 事件 (藉由以滑鼠右鍵按一下或按 Command+按一下文字的方式) 時,快顯選單預設會自動顯示。若要避免開啟預設選單,請偵聽
contextmenu
事件,並呼叫事件物件的
preventDefault()
方法:
function showContextMenu(event){
event.preventDefault();
}
接著,您可以使用 DHTML 技巧顯示自訂的快顯選單,或者顯示 AIR 原生快顯選單。在下列範例中,會呼叫選單的
display()
方法以回應 HTML 的
contextmenu
事件,藉此顯示原生選單:
<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>
|
|
|