Что такое тег HTML5 <command> и что такое поддержка браузера?
Я прочитал спецификацию HTML5 для <command>
и нашел информацию об этом элементе очень неопределенной.
Я пробовал это и обнаружил, что он работает не в Chrome (последняя версия), и он работает, работая над Safari (даже более старыми), извините, нет FF (не стреляйте в меня, пожалуйста) - только тест Mac.
Я не могу понять, что такое использование этого элемента или даже если я правильно его использую.
Я благодарю вас за любые разъяснения по этому поводу!
Ответы
Ответ 1
Он работает на Firefox 3.6.13 от Windows, кстати.
Элемент команды предназначен для инкапсуляции того, что вы можете сделать. Он может отображаться в меню (поскольку в меню представлены элементы, которые вы можете вызвать).
Идея
Он обеспечивает уровень абстракции между пользовательским интерфейсом и командами, поэтому вы можете сделать несколько элементов пользовательского интерфейса ссылкой на одну и ту же команду. Это дает вам гибкость наличия одного элемента команды, отображаемого в меню, который также вызывается через URL-адрес посередине страницы, а также кнопку внизу страницы. Отключение команды отключает все пути доступа (url/button/menu) к действию позади команды.
Где мы находимся - от 26 января 2010 года
В настоящее время очень мало информации о том, как привязать его к нескольким элементам будет фактически работать (поскольку браузеры только начали его внедрять!), но это одна из его намерений.
В настоящий момент единственным документированным использованием является предоставление семантически уникального тега для указания (без использования элементов <input>
или <button>
), что это command
внутри <menu>
, тем самым позволяя "реальный" рендеринг меню браузером (когда он реализован).
Ответ 2
Элемент <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 будет выпущен в качестве окончательной спецификации? Как есть, действительно непонятно, как он должен работать.
Ответ 3
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
Ответ 4
Пользовательские агенты определяют тег <a />
как интерактивный, но этот элемент предназначен только для создания гипертекстовой ссылки без какой-либо идеи щелчка.
Это поведение пользовательского агента стало стандартом, что не совпадает с атрибутом longdesc тега <img />
.
Поскольку HTML был разработан для структурирования информации и содержимого, а не для взаимодействия, новая версия HTML (5) пытается "смягчить" этот недостаток и вводит тег <command />
для взаимодействия с неинформативным содержимым HTML как HTML "читайте больше" якорей в примере.
Обратите внимание: "Команда может быть явно частью контекстного меню или панели инструментов", также следует сказать, что <command />
может использоваться в другом контексте и не требует тега <form />
вместо <input />
или <button />
.
Спасибо Spontifixus и Daniel Kutik за исправление этого ответа
Ответ 5
Ссылка lists.whatwg.org замерла - связанное обсуждение можно найти на:
http://lists.w3.org/Archives/Public/public-whatwg-archive/2012Dec/0264.html
Тема "[whatwg] и друзья", От: Ян Хиксон, Дата: Сб, 29 дек 2012 01:23:20 +0000 (UTC)