我正在为tinymce编辑器构建一个插件,该插件将一些微数据添加到选定的文本中,并且我想确保最终标记将是有效的。作为草稿微数据规范中的specified,通过将itemscope
属性添加到元素来指示一个新项,例如:
<section itemscope itemtype="http://example.com/vocab/someobject" itemid="someid" >
<meta itemprop="topic" content="something very interesting" />
....
other microdata stuff
</section>
我使用extended tinymce的配置参数来识别这些微数据属性:
tinyMCE.init({
...
schema: "html5",
extended_valid_elements:"@[itemscope|itemtype|itemid|itemprop|content],div,span,time[datetime]"
...
});
而且一切正常。但是,当我使用插件时,微小的mce仍通过向itemscope属性添加空值来“纠正”我的标记,例如:
itemscope=""
。但是itemscope属性是一个 bool 元素,AFAIU表示该元素不应该有任何值。所以问题是,a)如果itemscope属性具有值,它仍然是有效的标记吗?和b)如果没有,(如何)我可以配置tinymce将itemscope保留为适当的 bool 属性,而不附加
=""
位?谢谢!
最佳答案
bool 属性must either be the empty string, or the name of the attribute itself的值。因此,<div itemscope>
,<div itemscope="">
和<div itemscope="itemscope">
都是等效的。