У меня есть страница со многими элементами <video>
, которые расположены друг за другом.
Сейчас говорит 100. Когда я нажимаю на веб-страницу, Chrome загружает первые 25, и я вижу, что видеоизображения отображаются Ok, но затем он останавливается, а остальные остаются черными. Я также вижу, что страница по-прежнему загружается, и я вижу хром, говорящий "In progress..." в нижней левой части страницы.
Используя firefox, я могу загрузить одну и ту же страницу без проблем. Кроме того, используя IE 11, я могу загрузить одну и ту же страницу без проблем, и все видео выглядят нормально.
Ни в одном из этих случаев я еще не сыграл видео. Это всего лишь ожидание загрузки страницы.
Я использую локальный сервер apache на своем ПК. Настройка - это программное обеспечение XAMPP. Итак, Apache работает на моем ПК, и я обращаюсь к своей странице с помощью localhost.
Теперь вот интересная вещь, которую я нашел. Когда я загружаю страницу с помощью файла:///C:/URI и использую ту же самую точную страницу, теперь Chrome показывает все видеоэлементы просто отлично! Ни один из них не черный. Все они отлично выглядят, и я могу играть без проблем.
Проблема возникает только при использовании сервера apache. Таким образом, это проблема буферизации между веб-сервером и браузером Chrome.
Я знаю, что это проблема с буферизацией, поскольку, если я перемещаю одно из видео, все еще показывающее черное, и помещаю ссылку вверху страницы, и перезагружаю страницу, то она больше не черная и она появляется. Ничего не изменилось, кроме позиции тега <video>
. Итак, похоже, у Chrome есть предел количества видеотегов, которые он может загрузить на одной странице?
Я использую Chrome 36.0.1985.125 для Windows 7.
Я попытался изменить размер отображаемого видео, используя:
video {
width: 200px !important;
height: auto !important;
}
Но независимо от того, какой размер я использую в приведенном выше, он все еще висит в одном месте.
Любые предложения, что делать? Я мог бы разбить веб-страницу на многие разные страницы в качестве последнего средства.
Это окна 7, 64 бит. Элементы video
, которые я использую, одинаковы. Вот один пример
<P>
<video width="480" height="385" controls>
<source src="movie.webm" type="video/webm">
<source src="movie.ogg" type="video/ogg">
<source src="movie.mp4" type="video/mp4">
Your browser does not support the video tag.
</video>
</P>
Как я уже сказал, изменение ширины и высоты не имеет значения.
Я просмотрел файл журнала для apache (файл журнала доступа), и там я вижу около 206 кодов, когда загружаю страницу из Chrome (206 - это частичное содержимое). Вот пример одной записи:
[11/Aug/2014:13:17:25 -0500] "GET /my_notes/movie.webm HTTP/1.1" 206 1768659
"http://localhost/my_notes/index.htm" "Mozilla/5.0 (Windows NT 6.1; WOW64)
AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.125 Safari/537.36"
Когда я загружаю одну и ту же страницу из firefox и смотрю файл журнала apache, я не вижу никаких 206 кодов. Из http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html говорится:
Сервер выполнил частичный запрос GET для ресурса. запрос ДОЛЖЕН включить поле заголовка диапазона (раздел 14.35) указывая желаемый диапазон, и МОЖЕТ включить заголовок If-Range (раздел 14.27), чтобы сделать запрос условным.
Итак, похоже, что у Chrome есть предел видео, которое он может запросить? Это известная проблема с Chrome?