我已经从http://jqueryui.com/spinner/的timepinner的示例代码中获得了这个。我无法让它发挥作用。
<!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中,我得到: 未捕获的TypeError:undefined不是函数
在Firefox中,我得到: TypeError:Globalize.parsedate不是函数
两者都在线return +Globalize.parseDate( value );
。
脚本标记中脚本的所有位置都是正确的。我没有得到任何其他错误。微调器的向上/向下箭头缺失。
我错过了一个剧本吗?
答案 0 :(得分:1)
首先关闭你的剧本永远不应该在你的脑海中。您应该始终将它加载到dom下面,因为加载脚本会阻止渲染页面。有关详细信息,请参阅https://developers.google.com/speed/docs/insights/BlockingJS。我尽可能地复制了你的代码而没有任何问题。我建议查看你的全球化文件。我为我加载的所有文件使用了CDN,并使用http://cdnjs.com/libraries/globalize作为globalize.js文件。所以请仔细检查你的globalize.js或提供一个链接,这样我就可以看一下。希望有所帮助。
答案 1 :(得分:0)
我使用了JqueryUI站点中的globalize.js来消除错误。 https://jqueryui.com//resources/demos/external/globalize/globalize.js