什么是HTML5 <command>标签以及什么是浏览器支持

Tru*_*ufa 21 html tags html5 specifications language-specifications

我已经阅读了HTML5规范<command>,发现这个元素的信息非常模糊.

我已经尝试过,发现它不能在Chrome(最新版本)工作,它正在使用Safari(甚至是较旧版本),抱歉没有FF(请不要拍我) - Mac只测试.

我无法理解这个元素的用途是什么,即使我正确使用它.

我提前感谢您对此有任何澄清!

hal*_*ors 21

<command>元素是一个抽象,让您从多个菜单项或按钮引用相同的"命令".AFAIK的想法是这样的

<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>
Run Code Online (Sandbox Code Playgroud)

然后,如果要表明用户不能在上下文中执行此操作,则可以执行此操作

document.getElementById('doThat').disabled=true;
Run Code Online (Sandbox Code Playgroud)

按钮和菜单项都将被禁用.或者您可以为命令元素指定快捷键,菜单和按钮将响应快捷方式.像这样的东西.

我不确定,但我认为HTML5的这部分未完成,可能会在HTML5作为最终规范发布之前被删除?原样,确实不清楚它是如何工作的.


Ric*_*iwi 6

顺便说一句,它适用于Windows的Firefox 3.6.13.

command元素用于封装您可以执行的操作.它可以在菜单中呈现(因为菜单会显示您可以调用的项目).

这个想法

它提供了UI和命令之间的抽象层,因此您可以使多个UI元素引用相同的命令.这使您可以灵活地在菜单中呈现一个命令元素,该命令元素也可以通过页面中间的URL以及页面底部的按钮调用.禁用该命令会禁用命令后面的操作的所有访问路径(url/button/menu).

我们在哪里 - 截至2010年1月26日

目前关于如何将它与多个元素的链接实际起作用的信息非常稀少(因为浏览器刚刚开始实现它!)但这是其意图之一.

目前,唯一记录的用法是提供语义上唯一的标记来指定(不使用<input><button>元素)它在a command<menu>,从而允许浏览器进行"真实"菜单呈现(当实现时).

  • @cybrekiwi感谢您的快速解答!我有点迷失了`它在UI和命令之间提供了一个抽象层,这样你就可以让多个UI元素引用同一个命令`你能给我一个非常快速的例子吗?以前不能这样做吗? (3认同)

Flo*_*der 5

command已被删除以支持menuitem. 更多信息:

  • http://lists.whatwg.org/pipermail/whatwg-whatwg.org/2012-December/038472.html
  • http://www.whatwg.org/specs/web-apps/current-work/multipage/interactive-elements.html#the-menu-element