Дополненная версия Javascript-календаря
В своей старой заметке о доработке скрипта календаря, автором которого является г-н Oliver Bryant, в комментариях было предложено добавить возможность индикации не только текущей даты, но и выбранного пользователем дня. Не совсем понимаю для чего это нужно, ведь в поле ввода текущую дату всегда видно, однако такая доработка была сделана и скрипт был отправлен Денису, который и предложил это дополнение. Какое-то время новая версия пролежала “в столе”, но сейчас я решил “красиво все оформить” и выложить обновленную версию.
Я добавил в архив английскую и русскую версии с новым дополнением. На данный момент скрипт имеет следующие возможности:
- подключение к полю ввода input text;
- русская(cp1251) и английская версия, с различием первого дня недели;
- подсветка текущей даты;
- подсветка выбранной пользователем даты (v27-04-2009);
- быстрый выбор текущей даты одним кликом.
Я знаю, чем еще можно и даже нужно дополнить скрипт, но останавливает желание сохранить маленький размер файла. Огромных высокофункциональных монстров и так предостаточно.
Скачать скрипты календаря (v2)
ОБНОВЛЕНИЕ: Третье обновление календаря
Здравствуйте! Подскажите пожалуйста, как выводить календарь на экран без взаимодействия с формой?
Я имею в виду его статичное отображение на странице сайта.
Можно ли реализовать при выборе даты переход на соответствующую гиперссылку, а не внесение этой даты в поле формы?
Hammer, я думаю, что для этого нужны довольно серьезные доработки. Изначально он предназначался именно для добавления даты в поле формы. По поводу перехода по клику, наверное нужно подправить функции cs_click(e) и checkClick(e). Функция lcs(ielem) включает отображение и привязывает его к полю формы: ielem.
Я решил проблему отображения его в статике!
Из строчки
document.write(”);
Нужно удалить:position:absolute; и display:none;
и На страницу его уже можно выводить втыкая в любом месте html кода:
Эх, защита))
Нужно удалить из строчки определения таблицы календаря. Она идёт сразу за:
var selectedd, selectedm, selectedy;
В FireFox-е выскакивает в левом верхнем углу страницы
Evgeny, похоже только у вас. Смотрите на другие скрипты, смотрите на пример. Может стоит обновить Firefox.
Evgeny, чnобы в FireFox отображалось в правильной позиции, необходимо координаты указывать в конкретных единицах, например пикселях. На деле это означает, заменить в начале функции lcs строки:
getObj(’fc’).style.left=Left(ielem);
getObj(’fc’).style.top=Top(ielem)+ielem.offsetHeight;
на:
getObj(’fc’).style.left=Left(ielem)+”px”;
getObj(’fc’).style.top=Top(ielem)+ielem.offsetHeight+”px”;