Что такое HTML5 тег <command> и что поддерживает браузер

Я прочитал спецификацию HTML5 для <command> и нашел информацию об этом элементе очень расплывчатым.

Я попробовал его и обнаружил, что он не работает в Chrome (последняя версия) и работает в Safari (даже в более старых версиях), извините, нет FF (не стреляйте в меня, пожалуйста) - Mac только тестирует.

Я не могу понять, для чего нужен этот элемент или даже если я использую его правильно.

Заранее благодарю за любые разъяснения по этому поводу!

5 ответов

Решение

Кстати работает на Firefox 3.6.13 из Windows.

Элемент command предназначен для инкапсуляции того, что вы можете сделать. Его можно отобразить в меню (поскольку в меню представлены элементы, которые вы можете вызвать).

Идея

Он обеспечивает уровень абстракции между пользовательским интерфейсом и командами, так что вы можете сделать так, чтобы несколько элементов пользовательского интерфейса ссылались на одну и ту же команду. Это дает вам возможность иметь один элемент команды, отображаемый в меню, который также вызывается через URL-адрес в середине страницы и кнопку внизу страницы. Отключение команды отключает все пути доступа (URL / кнопка / меню) к действию, стоящему за командой.

Где мы находимся - по состоянию на 26 января 2010 года

В настоящее время имеется очень скудная информация о том, как на самом деле будет работать его привязка к нескольким элементам (поскольку браузеры только начали его реализовывать!), Но это одно из его намерений.

В настоящее время единственным документированным использованием является предоставление семантически уникального тега для указания (без использования <input> или же <button> элементы), что это command в пределах <menu>

<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>

Затем, если вы хотите указать, что пользователь не может сделать это в контексте, вы можете сделать

document.getElementById('doThat').disabled=true;

и кнопка, и пункт меню будут отключены. Или вы можете назначить сочетание клавиш для элемента команды, и меню и кнопка будут реагировать на сочетание клавиш. Такие вещи.

Я не уверен, но я думаю, что эта часть HTML5 еще не завершена и, вероятно, будет удалена до того, как HTML5 будет выпущен в качестве окончательной спецификации? Как есть, действительно неясно, как это должно работать.

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

Пользовательские агенты определяют <a /> пометить как интерактивный, но этот элемент был разработан только для создания гипертекстовой ссылки без какого-либо представления о щелчке.

Такое поведение агента пользователя стало стандартом, что не совпадает с атрибутом longdesc <img /> тег.

Поскольку HTML был разработан для структурирования информации и содержимого, а не для взаимодействия, новая версия HTML (5) пытается "смягчить" этот недостаток и вводит <command /> тег для взаимодействия с неинформативным содержимым HTML в качестве якоря "read more" в примере.

Обратите внимание, что "команда может быть явно частью контекстного меню или панели инструментов" также следует сказать, что <command /> может использоваться в другом контексте и не требует <form /> тег вместо <input /> или же <button />,

Спасибо Spontifixus & Daniel Kutik за исправление этого ответа

Ссылка на lists.whatwg.org обесточена - соответствующее обсуждение можно найти на:

http://lists.w3.org/Archives/Public/public-whatwg-archive/2012Dec/0264.html

Тема "[whatwg] и друзья", От: Ян Хиксон, Дата: Сб, 29 декабря 2012 01:23:20 +0000 (UTC)

Другие вопросы по тегам