Обновление до последнего пользовательского интерфейса JQuery и средства выбора даты приводит к тому, что средство выбора даты всегда отображается - PullRequest
8 голосов
/ 20 апреля 2011

Мы только что обновили JQuery 1.5.2.min и JQuery-ui-1.8.11.min и также используем последние файлы datepicker.js (я говорю файлы, потому что мы используем некоторые из локализованных версийDatePicker также).

Перед обновлением мы использовали следующий код для инициализации и использования DatePicker и установить языковой стандарт

$.datepicker.setDefaults($.datepicker.regional['']);

$('.datepicker').keypress(function()
{
    $(this).datepicker('hide');
});

$('.datepicker').datepicker();
$('.datepicker').datepicker('option', $.datepicker.regional[widgetCulture]);
$('.datepicker').datepicker('option', 'showAnim', '');
$('.datepicker').datepicker('setDate', new Date());

С момента обновления, когда вы прокручиваете до нижней части экранатам, где используется указатель даты, вы можете увидеть его под всеми элементами управления.Это просто плавает там!После того, как вы щелкнете по полю, с которым связан указатель даты, оно появится там, где оно должно быть, а затем снова не появится внизу экрана, пока вы не обновите страницу.Когда я закомментирую все, кроме строки .datepicker (), все, что я вижу, - это серая полоса вместо всего календаря, что немного лучше, я полагаю (не совсем), но все же необходимо исправить.Любая другая строка приведенного выше кода отображает весь календарь.Это сильно расстраивает!

Может кто-нибудь пролить свет на это?

Ответы [ 3 ]

6 голосов
/ 04 июня 2011

У меня была та же ошибка на какое-то время, и я нашел время посмотреть на нее сегодня вечером.Я не уверен, почему эта ошибка возникает, но вот что я сделал, чтобы устранить визуальный артефакт на экране.Сразу после создания средства выбора даты выполните следующее:

$('#ui-datepicker-div').css('display','none');

Предостережение. Когда я смотрю на dom, сгенерированный Safari, и перебираю код, который создает средство выбора даты, приведенный выше код выглядит следующим образом:ничего для дома, но это скрывает визуальный эффект на экране.

4 голосов
/ 28 сентября 2012

Я предпочитаю исправить это с помощью CSS:

#ui-datepicker-div {
   display: none;
}
1 голос
/ 24 апреля 2013

это также происходит со мной, у меня есть библиотеки jquery и Keith-Wood datepicker (http://keith -wood.name / datepick.html ) в одном HTMLЯ пытаюсь использовать #ui-datepicker-div {display: none;}, как упомянуто выше, но это решило проблему, но также заставило исчезнуть средство выбора даты Кит-Вуда.

Я использую jquery 1.8.2, jquery-ui.js (1.10.2) и даже theme 1.10.2.Поэтому я изменяю jquery-ui и тему обратно на 1.8.2, которая является той же версией, что и jquery.js.это решило проблему, серая линия больше не появлялась.Я думаю, что лучшее решение - использовать одну и ту же версию для всех библиотек jquery

...