使用jQuery元数据 - 无法读取HTML5数据属性

Mar*_*rko 5 jquery html5 metadata

我正在尝试使用HTML5数据属性并使用jQuery插件读取它们.

首先,DOCTYPE在这种情况下是否重要?(我不担心验证)

这是我正在尝试做的事情:

<ul id="quiz">
  <li data-career="math" class="first">
    <span>Question 1</span>
    <input type="radio" name="question1" />
    <input type="radio" name="question1" />
    <input type="radio" name="question1" />
  </li>
  <li data-career="science">
    <span>Question 2</span>
    <input type="radio" name="question2" />
    <input type="radio" name="question2" />
    <input type="radio" name="question2" />
  </li>
</ul>
Run Code Online (Sandbox Code Playgroud)

然后,会引发错误(a is undefined)

$.metadata.setType("html5");
$(document).ready(function() {
    var data = $("#quiz .first").metadata();
    console.log(data);
});
Run Code Online (Sandbox Code Playgroud)

console.log(data.career) 不起作用.

我正在使用jQuery 1.4.2.

PS元数据现在作为jQuery的一部分包含在内吗?

Mar*_*man 11

从1.4.3 开始支持HTML 5 数据属性.

从发行说明:

例如,给定以下HTML:

<div data-role="page" data-hidden="true" data-options='{"name":"John"}'></div>
Run Code Online (Sandbox Code Playgroud)

以下所有jQuery代码都可以使用.

$("div").data("role") === "page";
$("div").data("hidden") === true;
$("div").data("options").name === "John";
Run Code Online (Sandbox Code Playgroud)