[更新] 問題を間違って説明した可能性があります。メニュー要素を非表示にする方法は知っていますが、クリックした要素が編集可能かどうかをテストするにはどうすればよいですか? Chrome は編集可能な要素を検出します - ff でそれを達成する方法。
画像をクリックしたときにのみ表示されるように、コンテキスト メニューに項目を取得しようとしています。
これは私のemailpicture.js
コード:
function showHideItems(event)
{
var show = document.getElementById("emailImage");
show.hidden = !(gContextMenu.onImage);
}
そしてxulコード:
<?xml version="1.0"?>
<overlay id="emailpicture" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
<script type="application/x-javascript" src="chrome://emailpicture/content/emailpicture.js"/>
<menupopup id="contentAreaContextMenu">
<menuitem id="emailImage" label="Email This Image" onpopupshowing="showHideItems()" oncommand=""/>
</menupopup>
</overlay>
この結果、ブラウザ内のすべてのオブジェクトに一連のアイテム (FireFox のすべてのアイテムである可能性があります) が表示されますonpopupshowing
。イベントを使用する必要がありますか? または別のもの?私はそれを正しく使用していますか?
答えてくれてありがとう