Ответ 1
См. crbug.com/441060. Вы можете избежать этой медленности, указав min = и max = attributes.
У меня есть сборщик дат на моем сайте, который просто использует выбор даты по умолчанию html5.
Я заметил, что до тех пор, пока пару недель назад он работал нормально, но с момента последнего обновления на Chrome Android они представили новый сборщик дат, и этот сборщик дат действительно медленный и не реагирующий. Для загрузки требуется несколько секунд, и мне очень сложно выбрать даты.
У меня есть демонстрационный сайт, иллюстрирующий его (http://datapickerandroid.meteor.com/). Я протестировал его на Nexus 7 2013, а у HTC один M8 и Chrome на Android обе проблемы. Я также тестировал его с помощью дельфинов и firefox, а также на настольных браузерах, они кажутся прекрасными, поэтому похоже на проблему с выбором даты на хроме.
Мне интересно, что происходит? Есть только ошибка в Chrome Android? Это происходит только для моих устройств? Я объявляю свой выбор даты неправильным образом? Можно ли указать браузеру, что я хотел бы использовать старый выбор даты? Я также использую Meteor (хотя в демонстрации я удалил все пакеты, отличные от стандартного), может ли это быть чем-то с этим?
См. crbug.com/441060. Вы можете избежать этой медленности, указав min = и max = attributes.
Для получения дополнительной информации я немного поиграл с настройкой min/max, max only и min и max. Каждый из них отличается поведением/производительностью.
Без мин или макс - нажатие на Android будет очень медленным
<input type="date">
Максимальный - нажатие на Android установит значение по умолчанию 01/01/0001 - в первый день. Не полезно
<input type="date" max="1979-12-31">
Мин. и макс - дата по умолчанию сегодня, и она загружается очень быстро!
<input type="date" min="0001-01-01" max="9999-12-31" >
https://jsfiddle.net/gpjc3xam/16/
Обновление
Для тех, кто использует это решение с Angular, обратите внимание, что минимальная дата в году 0001 не будет работать. Кажется, что 100-й год является самым низким Javascript, который позволит...