我使用javascript将事物绑定到HTML对象,并且需要比类名更复杂的机制。在HTML类名中表示键/值对的最佳方式
我的第一个方法是使用类名状结构的声明,其中结合是名位置,像这样:
Definition = identifier: foo bar baz
编码一些类名这一定义给出了
<p id="someid" class="identifier bish bash bosh">
<div id="anotherid" class="identifier heebie jeebie">
那么这可以被解读为:
{foo: bish, bar: bash, baz: bosh};
{foo: heebie, bar: jeebie}
请注意,绑定具有不同的数量参数rs。
这是非常脆弱的。我不能用任何额外的名称来装饰任何html元素(例如添加像拖放等jquery行为等等),并且通常是有点伪劣的...
我想要做的就是将它们表示为像这样的键值对:
<p id="someid" class="id{foo:bish} id{bar:bash} id{baz:bosh} random class">
<div id="anotherid" class="ui-draggable id{bar:jeebie} id{foo:heebie}">
,让我对我提供的id元素随机定位和类名的随机长度是八九不离十GUID(但我不能作出这样如此“手工很轻松了...... )
现在,in theory,classnames是CDATA,所以一切都应该是tickety-boo,但我是马doots!特别是在旧的跨浏览器端...
建议,建议,现有技术,关于类名称中KV对的最佳语法的最佳实践都感激不尽。
当你说'每个浏览器'你究竟是什么意思?当然有一些浏览器不支持它? IE6?有什么限制支持这个...... – 2009-08-06 06:45:56
我不知道,因为我没有用过它。但据我了解,这是由于浏览器是标签汤解析器(一直到现在他们正在标准化)一直工作的怪癖之一。这不是有效的html ofcourse(除非你使用的html5文档类型,它可以在IE6上运行),但是在页面加载完成后可以添加这些属性,所以验证器不会抱怨。 – 2009-08-06 09:00:48
我服务这些KV的页面,然后使用图书馆后加载,使所有的魔力... – 2009-08-06 16:16:15