Safari ExtensionでContext Menuを利用する場合には、一般には機能拡張ビルダーでコンテクストメニュー項目を作成しますが、今回は動的に作成してみます。
コンテクストメニューは、contextmenuイベントを取得してその時に作成します。具体的にはグローバルHTMLで
safari.application.addEventListener("contextmenu", handleContextMenu, false); function handleContextMenu(event) { event.contextMenu.appendContextMenuItem("doSomething", "Menu Name", "do-something"); } |
とします。あとはcommandイベントでevent.commandがdo-somethingの時になにがしかの処理をします。
safari.application.addEventListener("command", handleCommand, false); function handleCommand(event) { if (event.command === "do-something") { alert("do something); } } |