Встроенный в Discourse плеер для MP4 выглядит ужасно. Решил поискать способ улучшить его и наткнулся на это решение. Выглядит довольно минималистично, а настройка предельно проста: достаточно подключить CSS и JS.
Перевод на русский язык: (с любезного разрешения discourse-ai )
Видеоплеер MP4 в Discourse крайне непривлекателен. В ходе размышлений и поисков способов его улучшения я наткнулся на эту альтернативу. Она обладает определённым минималистичным шармом, а метод её настройки довольно прост. Достаточно подключить соответствующие CSS и JS, и всё заработает.
В тексте есть ошибка, из-за которой возникает баг: при загрузке с главной страницы плеер не работает. Ниже я делюсь бесплатно решением, за которое заплатил $50 специалисту — оно отлично работает и его можно смело рекомендовать!
Преимущества:
Приятное цветовое сочетание
Плеер сразу адаптируется под размер экрана, а не увеличивается постепенно
Много функций
Для публикации достаточно просто использовать тег video:
С позволения сказать, это ужасно плохой код, просто отвратительный.
Он запускает функцию каждые 10 миллисекунд, которая в 99% случаев ничего не делает, что является огромной тратой производительности.
Конечно, домашний компьютер справится с такими затратами… но это просто неэlegantно.
IMHO это очень плохой код, ужасный.
Он запускает функцию каждые 10 миллисекунд, которая в 99% случаев ничего не делает, что является огромной тратой производительности.
Конечно, домашний компьютер справится с такими затратами… но это просто неэlegantно.
Вам следует использовать API Discourse для выполнения этой задачи. Используйте это:
Вам следует использовать API Discourse для выполнения этой задачи. Используйте это:
<script type="text/discourse-plugin" version="0.8">
api.onPageChange(() => {
if (document.querySelector("video")) {
new Plyr('video');
}
});
</script>
Ничего страшного, это пустяк. В следующий раз, если будет более сложная задача, обсудим.
(Конечно, это не значит, что эта задача простая… Чтобы быстро понять, какой API вызывать, нужно потратить много времени на изучение исходного кода Discourse. И если вы не платите, мало кто действительно потратит время, чтобы разобраться, что именно вы хотите реализовать.)