我已经实现了Bootstrap form helper: time picker plugin,它在我的桌面浏览器上正常运行。这是代码:
<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]); ?>" class="form-horizontal" role="form">
<div class="form-group">
<label for="start_time" class="col-sm-2 control-label">Start time</label>
<div class="col-sm-10">
<div class="bfh-timepicker" id="start_time" data-name="start_time">
</div>
</div>
</div>
</form>
结果如下:
这是我点击它时的结果:
正如我所说,这在我的桌面浏览器(谷歌浏览器)上运行良好。但是在我的手机(使用谷歌浏览器的HTC One)上,时间选择器无法正常工作。我可以像第一张图中那样点击它,但是当我尝试使用向上和向下箭头输入时间时,没有任何反应。
如何解决此问题?
编辑:使用IE在我的手机上试过,仍然是同样的问题。答案 0 :(得分:0)
正如评论中所述,使用此插件似乎没什么支持。我最终使用了https://github.com/Eonasdan/bootstrap-datetimepicker。
答案 1 :(得分:0)
首先改变
.on('mousedown.bfhnumber.data-api', '.inc', BFHNumber.prototype.btninc)
.on('mousedown.bfhnumber.data-api', '.dec', BFHNumber.prototype.btndec);
到
.on('touchstart.bfhnumber.data-api mousedown.bfhnumber.data-api', '.inc', BFHNumber.prototype.btninc)
.on('touchstart.bfhnumber.data-api mousedown.bfhnumber.data-api', '.dec', BFHNumber.prototype.btndec);
thene find&#34; btninc&#34;和&#34; btndec&#34;功能
评论
$this.increment();
$this.decrement();
精细改变&#34; etInterval()&#34; to&#34; setTimeout()&#34;
您的代码将是这样的:
btndec: function() {
var $this,
timer;
$this = $(this).parent().find('.bfh-number').data('bfhnumber');
if ($this.$element.is('.disabled') || $this.$element.attr('disabled') !== undefined) {
return true;
}
// $this.decrement();
timer = setTimeout(function() {
var interval;
interval = setTimeout(function() {
$this.decrement();
}, 0);
$this.$element.data('interval', interval);
}, 600);
$this.$element.data('timer', timer);
$(document).one('mouseup', {btn: $this}, BFHNumber.prototype.mouseup);
return true;
}