HTML 5 data- Attributes
こんなかんじ?
var $D = (function(){ var camelize = function(string){ return string.replace(/-+(.)?/g, function(match, chr) { return chr ? chr.toUpperCase() : ''; }); }; return function(element){ if( element.dataset ) return element.dataset; var sets = {}; for(var i=0,a=element.attributes,l=a.length;i<l;i++){ var attr = a[i]; if( !attr.name.match(/^data-/) ) continue; sets[camelize(attr.name.replace(/^data-/,''))] = attr.value; } return sets; }; })();
<li id="xyz" data-length="1" data-foo-bar='1' data-something="hello">test</li>
alert(JSON.stringify( $D(document.getElementById('xyz')) )); // { length:1 ,fooBar:1,something:"hello" }