1

导致问题的浏览器: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; en) Presto/2.2。 15 版本/10.10

客户端机器:Windows 7 Ultimate 64 位,4 GB RAM,250 GB HD,2.3 GHz。

测试网站: 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 接口通过调用位于外部movie.js 文件中的javascript 函数GenerateWMP。这个文件的内容是:

//-----------------------------------------------------------
// 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 解决这个问题。任何澄清将不胜感激,即使只是为了确认这是一个已知的错误。

4

2 回答 2

3

也许问题是您希望 WMP 插件播放 MP4 文件。使用 Windows pre-7 中存在的默认编解码器,在任何浏览器中都不会。

也许问题在于您没有在其他浏览器上获得预期的媒体播放器插件。WMP、QT 和 Real 都可能尝试播放“application/x-mplayer2”嵌入,而哪一个获胜则取决于配置和运气。真正的和较旧的 QT 也无法播放 MP4。所有插件都会随机失败,因为它们讨厌你。

也许问题是无效的 URL(空格应编码为 %20)。

或者问题可能只是您嵌入了媒体播放器插件。这从来没有可靠地工作过。绝不。几乎没有人再尝试过。这是一个彻底的损失。世界已经压倒性地转向Flash 视频,HTML5<video>即将出现,但尚未成为主流;帮自己一个忙,加入他们。

于 2009-12-02T22:53:19.827 回答
1

问题是由于“预加载”过长的电影,在 Firefox 和 Opera 浏览器上加载 WMP 视频时会出现这种情况。我通过强制 WMP 播放器使用播放列表 (mpu) 文件播放两部电影来解决了这个问题。第一个视频很短(一帧),因此加载时根本不需要很长时间。这是简短的一帧预加载。然后当访问者按下电影的图像时,第一部电影播放得非常快,直到那时才加载下一部。这样,页面加载速度很快,并且行为正确。长电影不再导致初始页面加载延迟,因为预加载仅加载播放列表中的第一个单帧电影。

此问题已解决。

于 2009-12-11T23:08:20.033 回答