отмена события. - Отключить стрелку в календаре на прошлые дни
отмена события. - Отключить стрелку в календаре на прошлые дни
Сделал, но как то слишком много кода: <script> function levStrelkacalendar0(){ god = document.querySelector('#calendar0 thead td:nth-child(2)').dataset.year; mes = document.querySelector('#calendar0 thead td:nth-child(2)').dataset.month; prishla = new Date(god,mes).getTime(); if(prishla > Date.now()) { document.querySelector('#calendar0 thead tr:nth-child(1) td:nth-child(1)').onclick = function() { god = document.querySelector('#calendar0 thead td:nth-child(2)').dataset.year; mes = document.querySelector('#calendar0 thead td:nth-child(2)').dataset.month; prishla = new Date(god,mes).getTime(); if(prishla > Date.now()) { Calendar2("calendar0", document.querySelector('#calendar0 thead td:nth-child(2)').dataset.year, parseFloat(document.querySelector('#calendar0 thead td:nth-child(2)').dataset.month)-1, '20191229 20191231 20200101 20200102 20191130 20191201 20191202', '20200103 20191203', '20191228 20191129', '20191230'); }else document.querySelector('#calendar0 thead tr:nth-child(1) td:nth-child(1)').onclick = null; } }else document.querySelector('#calendar0 thead tr:nth-child(1) td:nth-child(1)').onclick = null; } Calendar2("calendar0", new Date().getFullYear(), new Date().getMonth(), '20191229 20191231 20200101 20200102 20191130 20191201 20191202', '20200103 20191203', '20191228 20191129', '20191230'); document.querySelector('#calendar0 thead tr:nth-child(1) td:nth-child(3)').onclick = function() { Calendar2("calendar0", document.querySelector('#calendar0 thead td:nth-child(2)').dataset.year, parseFloat(document.querySelector('#calendar0 thead td:nth-child(2)').dataset.month)+1, '20191229 20191231 20200101 20200102 20191130 20191201 20191202', '20200103 20191203', '20191228 20191129', '20191230'); levStrelkacalendar0(); } </script> |
Для такой, казалось бы простой штуки - отменить работу стрелки при прошедших датах в календаре.
Целиком: http://dom.onl/u/u8.php Может есть что проще того, что я написал? Спасибо. |
Цитата:
Цитата:
var o=document.querySelector('#calendar0 thead td:nth-child(2)').dataset god = o.year; mes = o.month; А у тебя эта конструкция встречается не раз. :( Сам селектор так же можно записать в некую переменную... |
Не про то. Это всё понятно и так.
Там должна быть в корне другая идея. Или воплощение. Задача в 3 слова - убрать стрелку на прошедшие дни А воплощение - 50 строк кода. |
Или я, как всегда, сам того не ведая - написал оптимальный код :-)
|
Цитата:
|
Потому что мне мой подход кажется в корне не верным.
Зачем вылизывать код который возможно пойдёт в корзину? |
Цитата:
А не переписывать его еще раз, после того как понравится "подход"... |
Этот код никто не писал - был прототип.
|
Часовой пояс GMT +3, время: 02:25. |