Задать вопрос
@shuvalovakris

Как можно поменять css-style у js daterangepicker?

66cee601e6462099096822.png

нужно поменять top, left и right у js daterangepicker.
ссылка на datepicker https://gist.github.com/wir/9407830

отрывки кода. инпут и настройка дейтпикера:
<input type="text" name="datefilter" value="">

$(function() {

        $('input[name="datefilter"]').daterangepicker({
            autoUpdateInput: false,
            showDropdowns: true,
            autoApply: true,
            locale: {
                monthNames: moment.months()
            }
        });

        $('input[name="datefilter"]').on('apply.daterangepicker', function(ev, picker) {
            $(this).val(picker.startDate.format('DD.MM.YYYY') + ' - ' + picker.endDate.format('DD.MM.YYYY'));
        });

    });


пробовала в настройках дейтпикера установить что-то вроде:
container: {
   css({
        top: 440,
        left: 440,
        right: 'auto'
   })
}


но это не работает.

заранее благодарю за любую подсказку.
  • Вопрос задан
  • 60 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 1
alexey-m-ukolov
@alexey-m-ukolov Куратор тега JavaScript
Никак не поменять, это хардкод:
move: function () {
    var parentOffset = {
        top: this.parentEl.offset().top - (this.parentEl.is('body') ? 0 : this.parentEl.scrollTop()),
        left: this.parentEl.offset().left - (this.parentEl.is('body') ? 0 : this.parentEl.scrollLeft())
    };
    if (this.opens == 'left') {
        this.container.css({
            top: this.element.offset().top + this.element.outerHeight() - parentOffset.top,
            right: $(window).width() - this.element.offset().left - this.element.outerWidth() - parentOffset.left,
            left: 'auto'
        });
        if (this.container.offset().left < 0) {
            this.container.css({
                right: 'auto',
                left: 9
            });
        }
    } else {
        this.container.css({
            top: this.element.offset().top + this.element.outerHeight() - parentOffset.top,
            left: this.element.offset().left - parentOffset.left,
            right: 'auto'
        });
        if (this.container.offset().left + this.container.outerWidth() > $(window).width()) {
            this.container.css({
                left: 'auto',
                right: 0
            });
        }
    }
},

https://gist.github.com/wir/9407830#file-daterange...

Прямо в исходниках придётся добавлять нужные вам костыли.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы