jQueryui timespinner示例给出了未定义的错误
我已经从http://jqueryui.com/spinner/的timespinner的示例代码中导出了此示例。我无法让它工作。jQueryui timespinner示例给出了未定义的错误
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>jQuery UI Spinner - Time</title>
<script src="/jquery-2.1.0.min.js"></script>
<script src="/jquery-ui-1.11.2/jquery-ui.min.js"></script>
<script src="/resources/jquery-mousewheel-master/jquery.mousewheel.js"></script>
<script src="/resources/globalize-1.0.0-alpha.10/dist/globalize.js"></script>
<script>
$.widget("ui.timespinner", $.ui.spinner, {
options: { step: 60 * 1000, page: 60 },
_parse: function(value) {
if (typeof value === "string") {
if (Number(value) == value) {
return Number(value);
}
return +Globalize.parseDate(value);
}
return value;
},
_format: function(value) {
return Globalize.format(new Date(value), "t");
}
});
$(function() {
$("#spinner").timespinner();
$("#culture").change(function() {
var current = $("#spinner").timespinner("value");
Globalize.culture($(this).val());
$("#spinner").timespinner("value", current);
});
});
</script>
</head>
<body>
<p> <label for="spinner">Time spinner:</label> <input id="spinner" name="spinner" value="08:30 PM"> </p>
<p>
<label for="culture">Select a culture to use for formatting:</label>
<select id="culture">
<option value="en-EN" selected="selected">English</option>
<option value="de-DE">German</option>
</select>
</p>
<div class="demo-description">
<p>
A custom widget extending spinner. Use the Globalization plugin to parse and output
a timestamp, with custom step and page options. Cursor up/down spins minutes, page up/down
spins hours.
</p>
</div>
</body>
</html>
在Chrome中,我得到: 遗漏的类型错误:未定义是不是一个函数
在Firefox中,我得到: 类型错误:Globalize.parsedate不是一个函数
两者都是在行,return +Globalize.parseDate(value);
。
脚本标记中的所有脚本位置都是正确的。我没有得到其他错误。微调器的上/下箭头缺失。
我是否缺少脚本?
首先你的脚本不应该在你的脑海。你应该总是把它加载到你的dom下面,因为加载一个脚本块来渲染页面。有关更多信息,请参阅https://developers.google.com/speed/docs/insights/BlockingJS。我尽我所能复制了您的代码,并且没有任何问题。我会建议看看你的全球化文件。我使用CDN的所有我加载的文件,并使用http://cdnjs.com/libraries/globalize作为globalize.js文件。所以仔细检查你的globalize.js或提供一个链接,以便我可以看看它。希望有所帮助。
使用cdnjs.com中的globalize.js工作。 – PDog 2014-11-15 20:01:53
我使用jqueryUI站点的globalize.js来摆脱错误。 https://jqueryui.com//resources/demos/external/globalize/globalize.js
不完全确定'globalize.js'包含了什么,但是它的github页面显示它有'core'和'date'的不同模块(以及'number'和'plural',但它们在这里似乎不相关)所以我会仔细检查你确实包括了所需的一切 – blgt 2014-11-14 16:41:51
我确实需要德国文化脚本。谢谢。 – PDog 2014-11-15 19:57:53