のHTML5 仕様を<command>
読んだところ、この要素に関する情報が非常に曖昧であることがわかりました。
試してみたところ、Chrome (最新バージョン) では動作せず、Safari (古いバージョンでも) で動作していることがわかりました。申し訳ありませんが、FF はありません (撃たないでください) - Mac のみのテストです。
この要素の用途が理解できません。また、正しく使用していても理解できません。
それについての明確化のために事前に感謝します!
のHTML5 仕様を<command>
読んだところ、この要素に関する情報が非常に曖昧であることがわかりました。
試してみたところ、Chrome (最新バージョン) では動作せず、Safari (古いバージョンでも) で動作していることがわかりました。申し訳ありませんが、FF はありません (撃たないでください) - Mac のみのテストです。
この要素の用途が理解できません。また、正しく使用していても理解できません。
それについての明確化のために事前に感謝します!
この<command>
要素は、複数のメニュー エントリまたはボタンから同じ「コマンド」を参照できるようにするための抽象化を目的としています。私の知る限り、アイデアは次のようなものです
<command id="doThat" onclick="doThat()"></command>
<input type="button" command="doThat" value="click me to do that">
<menu command="doThat">This does that too</menu>
次に、ユーザーがコンテキストでそれを行うことができないことを示したい場合は、行うことができます
document.getElementById('doThat').disabled=true;
ボタンとメニュー エントリの両方が無効になります。または、コマンド要素にショートカット キーを割り当てて、メニューとボタンのいずれかがショートカットに応答するようにすることもできます。そういうもの。
よくわかりませんが、HTML5 のこの部分は未完成であり、HTML5 が最終仕様としてリリースされる前に削除される可能性が高いと思いますか? 現状では、それがどのように機能することを意図しているかは確かに不明です。
ちなみに、Windows の Firefox 3.6.13 で動作します。
command 要素は、実行できることをカプセル化するためのものです。メニュー内でレンダリングできます (メニューには呼び出すことができるアイテムが表示されるため)。
UI とコマンドの間に抽象化レイヤーを提供するため、複数の UI 要素が同じコマンドを参照できるようになります。これにより、1 つのコマンド要素をメニューにレンダリングし、ページの中央にある URL とページの下部にあるボタンを介して呼び出すという柔軟性が得られます。コマンドを無効にすると、コマンドの背後にあるアクションへのすべてのアクセス パス (url/button/menu) が無効になります。
現在、複数の要素へのリンクが実際にどのように機能するかについての情報は非常に乏しいですが(ブラウザは実装を開始したばかりなので!)、それは意図の 1 つです。
現時点で文書化されている唯一の使用方法は、意味的に一意のタグを提供して (<input>
または<button>
要素を使用せずに)command
内にあることを指定することです<menu>
。これにより、ブラウザーによる「実際の」メニュー レンダリングが可能になります (実装されている場合)。
command
を優先して削除されましたmenuitem
。詳細情報:
ユーザー エージェントは<a />
タグをインタラクティブと定義しますが、この要素は、クリックの概念を持たないハイパーテキスト参照を作成することのみを目的として設計されています。
<img />
このユーザー エージェントの動作は標準になりましたが、タグの longdesc 属性とは異なります。
HTML は相互作用を行うためではなく、情報とコンテンツを構造化するように設計されているため、新しいバージョンの HTML (5) はこの不足を「緩和」しようとし<command />
、HTML の非有益なコンテンツとの相互作用を「続きを読む」アンカーとしてタグに導入します。例。
「コマンドは、明示的にコンテキスト メニューまたはツールバーの一部にすることができます」は、は別のコンテキストで使用でき、またはの代わりにタグを<command />
必要としないことにも注意してください。<form />
<input />
<button />
この回答を修正してくれた Spontifixus と Daniel Kutik に感謝します