Тут важный нюанс, что у гонщика есть стартовая позиция, да и в ходе гонки она определяется физическим положением болида. В футбольном чемпионате физических ограничений нет, в начальной стадии точно будет беспрерывная чехарда.
Чехарды в начале меньше, если расставить команды по результатам прошлого сезона. Но всё равно «обгонов» будет в разы больше, чем в любой формульной гонке.
Можно сделать побольше горизонтальный масштаб (расстояние между турами) и читаемость значительно повысится.
Да и брать за отсечку не обязательно начало чемпионата. Расставить можно сразу по результатам 1-го тура, там даже будет правильнее.
Идея хорошая, но я запомнил положение участников, потом они «сбрасываются» вниз и… я не помню кто куда переместился. Сделать бы изменения только тех позиций, которые реально менялись.
Не совсем понял. Можете привести пример или прикрепить гифку, пожалуйста?
Сортировка в таблицах устойчивая, команды перемещаются только при изменении позиции.
Отлично. Недавно понадобилось сделать такую же анимацию, нашелся только старенький jquery-плагин.
Единственное пожелание: добавьте файл лицензии (MIT или другую), чтобы можно было спокойно использовать в коммерческих проектах.
Идея хорошая. На мой взгляд, интерактивность должна подразумевать большую вовлеченность пользователя в процесс взаимодействия. Еще было бы интересно, если бы таблица позволяла делать прогноз на следующий тур.
Получается довольно любопытный виджет, спасибо. Благодатная тема для исследования и совершенствования, поскольку в каждом чемпионате свои нюансы при равенстве очков. Вижу естественным развитием вынесение конфигурации чемпионата в файл с данными. Причём, в формате JSON, а не CSV, всё-таки.
В самой анимации смущает изменение номера места до перемещения. Может, лучше разбить на три этапа? Начисление очков, сортировка, обновление номера.
Всё так. Скорее всего, для начала добавлю параметр data-tie-breaking с заготовками для дополнительных показателей количество побед, забитые голы и т.п. Если будет не хватать, добавлю опцию конфигурационного JSON-файла.
Я пробовал сделать обновление в несколько этапов — интуитивно казалось, что так хуже.
Неплохо было бы разделать css на тот что относится именно к таблице и общий, относящийся к странице. Потому что если подключить все по инструкции в существующий сайт будет конфликт определения заголовков h2 и некоторых других общеупотребимых тегов.
Так же идет ссылка на локально расположенные шрифты, про которых в инструкции ничего нет, что выдает ошибку валидатора.
Мы сделали ошибку, не разделив скрипт и демонстрационный сайт, из-за чего вылезли проблемы с CSS и шрифтами. Сайт в новогоднюю ночь сел на Jekyll и переехал в отдельный репозиторий: https://github.com/TargetProcess/replayTable.com. В ближайшее время вычистим лишнее из файлов самого скрипта — и всё станет хорошо.
И вправду, был баг, при котором таблица не работала, если команды сыграли разное количество туров.
Выпустил новый релиз с фиксом и протестировал вашу таблицу: https://replaytable.com/tables/requests/2016/1ax-russian-second-division-centre.html. Кстати, локализировал её и добавил общее количество туров, чтобы прогресс-бар показывал правду — загляните в исходный код.
В следующем релизе поправим стили, про которые вы писали сверху.
да, заработало. но появились другие проблемы
добавил еще 2 игры, для полного соответствия реальности — выявилась еще одна проблема (а может 2), в исходных данных Чертаново сыграло 14 игр, а табличка генерит что 15, это идет из 4 тура, который Чертаново пропускало, таблица добавляет проигранную игру, видимо из следующего тура (кстати, проверил — такая ситуация во всех случаях пропуска тура, то есть динамика неверно отражена, в каждом туре присутствует результат из другого тура). А вот откуда берет лишнюю игру в итоге — непонятно, в разбивке В/П/Н идет верно 4/7/3=14
В 15 туре действительно 14, но есть уже 1 игра из 16 тура.
И хотя его Чертаново не играло, +1 игру оно получает.
самый первый тур с этой проблемой — 4, там где Чертаново пропускает тур.
Или можно взять любой тур, найти команду которая его пропускает и там будет проблема влияние результатов игры из следующего тура, просто все остальные команды потом выравниваются, а Чертаново еще и на 1 игру больше.
Интерактивная таблица результатов