Clockpicker не отображает часы
У меня проблема с использованием устройства выбора часов ( http://weareoutman.github.io/clockpicker/).
Он ведет себя как текстовое поле и не показывает часы. Я не знаю, в чем может быть проблема, так как я включил необходимые скрипты и таблицы стилей в <head>
HTML:
<link href="http://weareoutman.github.io/clockpicker/dist/jquery-clockpicker.min.css" rel="stylesheet" />
<script src="http://weareoutman.github.io/clockpicker/dist/jquery-clockpicker.min.js"></script>
Я также загрузил активы, поместил их в проект и импортировал их так:
<script th:src="@{/assets/js/plugins/clockpicker/clockpicker.js}" src="js/plugins/clockpicker/clockpicker.js"></script>
Это HTML-код, который отображает текстовое поле и маленький значок часов:
<div class="input-group clockpicker" style="width: 50%; float: left;">
<input type="text" class="form-control" value="">
<span class="input-group-addon">
<span class="glyphicon glyphicon-time"></span>
</span>
</div>
И активация jquery:
$('.clockpicker').clockpicker();
Я понятия не имею, что нужно делать, поэтому любые советы приветствуются. Заранее спасибо!
РЕДАКТИРОВАТЬ: Fiddle здесь https://jsfiddle.net/q1skrndg/
2 ответа
Я решил ее, проблема была в том, что я добавил ClockPicker в качестве объекта jquery и активацию $('.clockpicker').clockpicker();
было сделано до того, как элемент был утоплен на странице, поэтому активировать его было нечего. Я думаю, что мне все еще нужно много работать с jquery, чтобы полностью понять это. Все равно спасибо всем:D
Работает нормально, я думаю, что вы пропустили добавление Jquery
в заголовке
$('.clockpicker').clockpicker();
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script src="https://weareoutman.github.io/clockpicker/dist/jquery-clockpicker.min.js"></script>
<link href="https://weareoutman.github.io/clockpicker/dist/jquery-clockpicker.min.css" rel="stylesheet"/>
<div class="input-group clockpicker" style="width: 50%; float: left;">
<input type="text" class="form-control" value="">
<span class="input-group-addon">
<span class="glyphicon glyphicon-time"></span>
</span>
</div>
<script>
$('.clockpicker').clockpicker();
</script>
Bootstrap 4 2020: значок часов не отображается, но сами часы отображаются
Если вы используете Bootstrap 4, значок часов может не отображаться по другой причине, а именно из-за изменений в классах Bootstrap.
Класс Bootstrap<span class="input-group-addon">
, как указано в документации ClockPicker, больше не используется в Bootstrap 4.
Теперь вам нужно использовать класс Bootstrap<span class="input-group-append">
или <span class="input-group-prepend">
как вы можете найти здесь как вы можете найти здесь и интерьерspan
нужен класс <span class="input-group-text">
.
Значит нужно заменить:
<div class="input-group clockpicker">
<input type="text" class="form-control" value="09:30">
<span class="input-group-addon">
<span class="glyphicon glyphicon-time"></span>
</span>
</div>
с чем-то вроде:
<div className="input-group clockpicker">
<input type="text" className="form-control" defaultValue="" placeholder="Now"></input>
<div class="input-group-append">
<span class="input-group-text" id="basic-addon1"><i class="fas fa-clock"></i></span>
</div>
</div>
ClockPicker больше не поддерживается https://weareoutman.github.io/clockpicker/, но теперь поддерживается здесь djibe. Вы можете увидеть рабочий пример от djibe на jsfiddle здесь.
В его новой версии есть некоторые изменения стиля и обновления, которые стоит интегрировать.