Firefox и Opera не завершают загрузку веб-страницы с помощью встроенного файла проигрывателя Windows Media - PullRequest
1 голос
/ 03 декабря 2009

БРАУЗЕРЫ, ВЫЗЫВАЮЩИЕ ПРОБЛЕМУ: Mozilla / 5.0 (Windows; U; Windows NT 6.1; en-US; rv: 1.9.1.5) Gecko / 20091102 Firefox / 3.5.5 Opera / 9.80 (Windows NT 6.1; U; ru) Presto / 2.2.15 Версия / 10.10

МАШИНА КЛИЕНТА: Windows 7 Ultimate, 64-битная, 4 ГБ оперативной памяти, 250 ГБ HD, 2,3 ГГц.

ТЕСТОВЫЙ САЙТ: http://www.microwavecontrolledfusion.us

У меня нет проблем с загрузкой файлов сайта, если они загружены прямо на мой домашний компьютер (локальный доступ) в любом браузере (например, IE, FF, Opera, Safari, Chrome, Macintosh). Файл MP4 хорошо воспроизводится во всех браузерах (IE, FF, Opera, Safari, Chrome, Mac Safari). При доступе через Интернет только Firefox и Opera останавливаются при загрузке, когда веб-сайт является единственной открытой вкладкой. Если открыта другая вкладка, то это не происходит, и страница загружается и работает нормально. IE, Chrome, Safari и Macintosh отлично работают и отлично работают.

Интерфейсы HTML посредством вызова функции javascript GenerateWMP, заблокированной во внешнем файле movie.js. Содержимое этого файла:

//-----------------------------------------------------------
// Writes the correct PromoClip object depending upon browser:
//-----------------------------------------------------------
function GenerateWMP()
{
  if (IsMac || Safari)
  {
    if (IsMac)
    {
      document.write('<OBJECT id="PromoClip" style="width:320px;height:256px;z-index: 1" classid="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B" codebase="http://www.apple.com/qtactivex/qtplugin.cab#version=6,0,2,0">');
    }
    else
    {
      document.write('<OBJECT id="PromoClip" style="width:320px;height:256px;" classid="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B" codebase="http://www.apple.com/qtactivex/qtplugin.cab#version=6,0,2,0">');
    }
    document.write('  <PARAM name="src"      value="docs/Low Density Pre-Experimental Promo.mp4">');
    document.write('  <PARAM name="autoplay" value="false">');
    document.write('  <EMBED src="docs/Low Density Pre-Experimental Promo.mp4" width="320" height="256" pluginspage="http://www.apple.com/quicktime/download/" id="Promo" name="Promo" autoplay="false" bgcolor="black"></');
  }
  else
  {
    document.write('<OBJECT id="PromoClip" style="width:320px; height:304px;" classid="CLSID:22d6f312-b0f6-11d0-94ab-0080c74c7e95" codebase="http://activex.microsoft.com/activex/controls/ mplayer/en/nsmp2inf.cab#Version=5,1,52,701" standby="Loading Microsoft Windows Media Player components..." type="application/x-oleobject">');
    document.write('  <PARAM name="fileName"           value="docs/Low Density Pre-Experimental Promo.mp4">');
    document.write('  <PARAM name="animationatStart"   value="true">');
    document.write('  <PARAM name="transparentatStart" value="false">');
    document.write('  <PARAM name="autoStart"          value="false">');
    document.write('  <PARAM name="showControls"       value="true">');
    document.write('  <PARAM name="showStatusBar"      value="true">');
    document.write('  <PARAM name="loop"               value="false">');
    document.write('  <EMBED type="application/x-mplayer2" pluginspage="http://microsoft.com/windows/mediaplayer/en/download/" id="Promo" name="Promo" displaysize="4" autosize="-1" showcontrols="true" showtracker="-1" showdisplay="0" showstatusbar="true" videoborder3d="-1" width="320" height="304" src="docs/Low Density Pre-Experimental Promo.mp4" autostart="false" designtimesp="5311" loop="false"></');
  }
  document.write('EMBED>');
  document.write('</');
  document.write('OBJECT>');
}

HTML-код из столбца таблицы, который вызывает эту функцию:

<TD class="mid" id="d0_c" style="width:320px;height:304px;vertical- align:top;cursor:pointer;background:url('img/clear.png') center top no-repeat" onClick="if (running==0) {MovieStart();}"><DIV id="Movie"><SCRIPT type="text/javascript" language="JavaScript1.1">GenerateWMP();document.close();</SCRIPT></DIV></TD>  

Я уже экспериментировал с Quicktime Player и обнаружил те же проблемы. Это загружается правильно только тогда, когда я еще не открыл вкладку. Поэтому я считаю, что это должно быть ошибка браузера. Я хотел бы знать причину остановки и по возможности исправить это для Firefox и Opera. Будем благодарны за любые разъяснения, даже если они подтвердят, что это известная ошибка.

Ответы [ 2 ]

3 голосов
/ 03 декабря 2009

Возможно, проблема в том, что вы ожидаете, что плагин WMP будет воспроизводить файлы MP4. При использовании кодеков по умолчанию в Windows pre-7 этого не произойдет ни в одном браузере.

Возможно, проблема в том, что вы не получаете ожидаемый плагин медиаплеера в других браузерах. WMP, QT и Real могут попробовать сыграть встраивания «application / x-mplayer2», и выигрыш зависит от конфигурации и удачи. Реальные и старые QT также не могут играть в MP4. И все плагины случайно терпят неудачу, потому что они ненавидят вас.

Возможно, проблема в неправильных URL-адресах (пробелы должны быть закодированы как% 20).

Или, возможно, проблема в том, что вы встраиваете плагин для медиаплеера. Это никогда не работало надежно. Никогда. Почти никто даже не пытается больше. Это полная потеря. Мир в подавляющем большинстве перешел на Flash-видео , с HTML5 <video> на горизонте, но пока еще не массовым; сделайте себе одолжение и присоединитесь к ним.

1 голос
/ 12 декабря 2009

Проблема связана с «предварительной загрузкой» длинных фильмов, и это происходит в браузерах Firefox и Opera при загрузке видео WMP. Я решил эту проблему, заставив проигрыватель WMP воспроизводить ДВА фильма с помощью файла плейлиста (mpu). Первое видео очень короткое (один кадр), поэтому, когда оно загружается, оно совсем не занимает много времени. Это короткая предварительная загрузка в один кадр. Затем, когда посетитель нажимает на изображение для фильма, первый фильм воспроизводится очень быстро, а следующий загружается не раньше. Таким образом, страница загружается быстро и ведет себя правильно. Длинный фильм больше не вызывает начальной задержки загрузки страницы, потому что предварительная загрузка загружает только первый однокадровый фильм в список воспроизведения.

Эта проблема решена.

...