.data still has issues

by dwaddell

HTML

<script src="http://code.jquery.com/jquery-1.6.2.js"></script>
<pre>
<h1>Testing jQuery 1.6.3 .data() API</h1>
</pre>

JavaScript

outElement = $('pre');
body = $('body');

function outIt(label, out) {
    outElement.append('<h2>' + label + '</h2>');

    switch (typeof out) {
    case 'undefined':
        outElement.append('&lt;undefined&gt;' + "\n");
        break;
    case 'string':
        outElement.append(out + "\n");
        break;
    default:
        var didOut = false
        $.each(out, function(key, value) {
            didOut = true;
            outElement.append(key + ': ' + value + "\n");
        });
        if (!didOut) {
            outElement.append("&lt;empty&gt;\n");
        }
        break;
    }

    outElement.append("\n");
}

outIt('Original .data()', body.data());

body.data("jstree-instance-id", 0);
body.data("jstreeinstanceid2", 'hello');
body.data("jstreeinstanceid3", 5);

outIt('.data() after adding via object with hyphenated key', body.data());

outIt("jstree-instance-id", body.data("jstree-instance-id"));

outIt("jstreeinstanceid2", body.data("jstreeinstanceid2"));

outIt("jstreeinstanceid3", body.data("jstreeinstanceid3"));