Здравствуйте очень нужна помощь Ситуация такая есть скрипт который высчитывает время если промежуток временной попадает от 12:00 до 12:45 то в третьем поле пишутся минуты которые попали в этот промежуток к примеру в первом поле 12:10 во втором 12:20 в третьем поле появится 10 Но время приходится вбивать вручную так как маска ввода --:-- она хоть и работает но время в итоге не считается а без маски все работает. Но маска нужна ну или какая нибуть альтернатива чтобы время можно было забивать без ручного ввода ":" этих точек. Вот сам код https://jsfiddle.net/alexgrenn/wqz18pf8/ Код (PHP): <!DOCTYPE HTML> <html> <head> <title>Untitled</title> <meta charset="utf-8"> <style type="text/css"> </style> <script> function cost(run, end) { var lunch = [(new Date()).setHours(12, 0, 0, 0),(new Date()).setHours(12, 45, 0, 0)] run = (new Date()).setHours(run[0], run[1],0,0); end = (new Date()).setHours(end[0], end[1],0,0); run > lunch[0] && (lunch[0]=run); end < lunch[1] && (lunch[1]=end); if(run > lunch[1]||end < lunch[0]||run > end) return 0; return (lunch[1] - lunch[0])/60000 ; }; document.addEventListener("input", function(event) { var el = event.target; if (el.classList.contains('time')) { var inp = document.querySelectorAll('.time'); if (inp[0].value.length != 5 || inp[1].value.length != 5) return ; var run = inp[0].value.split(':'), end = inp[1].value.split(':'); inp[2].value = cost(run, end) } }); </script> </head> <body> <input type="text" class="time"> <input type="text" class="time"> <input type="text" class="time"> </body> </html>
Вот когда пытаюсь использовать данные плагины у меня почему то происходит либо-либо. Либо маска работает но подсчет не идет а если маску отключаю подсчет запускается. А в чем проблема не пойму.
Получается что любое дополнительное так сказать воздействие на поля input рушит подсчет. Я же пробовал и дублирующие поля к первому input привязывал маску а во втором дублировались данные из первого вместе с маской тоже ничего не выходит, что то в самом скрипте не так но не знаю что. Почему то он выполняется только если на input действует только одно правило.