2009年1月微软更新打破了IE7的MP3声音对象 [英] Jan 2009 Microsoft update breaks mp3 sound objects in IE7

查看:180
本文介绍了2009年1月微软更新打破了IE7的MP3声音对象的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

有一对夫妇的网站我认为,一个页面中使用HTML音频/ MP3对象。他们利用工作,但随后爆出的东西。这些页面依赖于Windows媒体播放器,如果客户端浏览器是IE。

There are a couple of web sites I maintain that use HTML audio/mp3 objects within a page. They use to work but then something broke. The pages rely on Windows Media Player if the client browser is IE.

一个个多月前,该对象将显示为一个WMP的控制。它应该看起来像

A month or so ago, the object would appear as a WMP control. It should look like this

但是,现在这似乎像一个邮件插槽一个微小的滚动条连接。结果
点击此链接查看。

But now what appears resembles a mail slot a tiny scrollbar attached.
Click on this link to view.

我觉得这种变化的可以出现在的 2009年1月微软更新

I think this change may have occurred with the Jan 2009 Microsoft updates.

我已经寻找答案,但只发现了一个关于这个的其他问题。我有
看到了一些其他网站相关问题。这里是,这似乎是有同样问题的另一个网站 - 见<一HREF =htt​​p://joliclic.free.fr/html/object-tag/en/object-audio.html#mp3相对=nofollow>为音频比如这个页面。

I have searched for answers but found only one other question regarding this. I have seen a few other sites with related problems. Here is another site that seems to be having the same problems - see this page for the audio example.


  1. 有其他人遇到这个问题? IE7在Windows XP(2系统)

  2. 这是否会发生在Vista或XP只(或只是我的2个系统)?

  3. 有没有解决?

下面是一个典型的声音对象中的HTML

Here is the html for a typical sound object

<div class="music">
  <p>Pachelbel's Canon</p>
  <object id="Cannon" type="audio/mpeg" data="./sound%20files/Pachebels%20Cannon.mp3" width="250" height="16">
    <param name="autoplay" value="false" />
    <param name="src" value="./sound files/Pachebels%20Cannon.mp3" />
    <object id="Cannon" classid="CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6" width="250" height="50">
      <param name="autostart" value="false" />
      <param name="url" value="./sound%20files/Pachebels Cannon.mp3" />
      <param name="showcontrols" value="true" />

      <param name="volume" value="100" />
    </object>
  </object>
</div><!-- end of control -->

这是一个pretty很酷的网站。但我试图将图像添加到这篇文章,图像不会出现在最后一篇文章。我缺少什么?

This is a pretty cool site. But I have tried to add images to this post and the images never appear on the final post. What am I missing?

推荐答案

所以,我结束了使用的 IE条件注释(啊!)来解决这个问题。这是丑陋的,但它的工作原理。它甚至的验证的为 XHTML

So I ended up using IE conditional comments (ugh!) to remedy the problem. This is ugly but it works. It even validates as XHTML.

还有2嵌套的对象,但现在的IE条件注释包装隐藏的第一个对象,因此IE浏览器看不到它,只有第二。的火狐,Safari 的和的 Chrome浏览器的看到的第一个对象,并使用的的Quicktime 的插件(如果已安装)来呈现的控制。

There are still 2 nested objects but now an IE conditional comment wrapper hides the first object so IE does not see it, only the second. Firefox, Safari and Chrome see the first object and use the Quicktime plugin (if installed) to render a control.

其他浏览器忽略IE条件注释,因为它们看起来像在中间有点胡言乱语定期打开/关闭注释块。

The other browsers ignore the IE conditional comments because they look like a regular open/closed comment block with a little gibberish in the middle.

注:T *他蜱(`)下面的注释行周围不属于那里,但你做的是要得到的东西在这里工作*

NOTE: T*he ticks(`) surrounding the comment lines below do not belong there, but you do what is necessary to get things to work around here.*

`<!--[if !IE]>-->`
  <object id="Cannon" type="audio/mpeg" data="./sound%20files/Pachebels%20Cannon.mp3" width="250" height="16">
    <param name="autoplay" value="false" />
    <param name="src" value="./sound files/Pachebels%20Cannon.mp3" />
`<!--<![endif]>-->`
  <object id="Cannon" classid="CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6" width="250" height="60">
      <param name="autostart" value="false" />
      <param name="url" value="./sound%20files/Pachebels Cannon.mp3" />
      <param name="showcontrols" value="true" />
      <param name="volume" value="100" />
`<!--[if !IE]>--></object><!--<![endif]-->`
</object>

不久前IE7使用,除非他们已经为Windows Media Player(WMP)一个合法的CLSID标签忽略音频/ MPEG类型的对象。由于第二对象(在我的previous模型),也有一个CLSID,IE会呈现一个WMP的控制和一切都会鸭子。其他浏览器只会承认第一个对象,并使用QuickTime的插件,一个声音控制。

Not long ago IE7 used to ignore audio/mpeg type objects unless they had a legit CLSID tag for Windows Media Player (WMP). Since the second object (in my previous model), did have a CLSID, IE would render a WMP control and everything would be just ducky. The other browsers would simply recognize the first object and use the Quicktime plugin for a sound control.

2008年12月9日,微软发布了另一个Windows Media Player的安全更新。一切工作仍像以前一样(对我来说)。其次对2009年1月13日,另一个更新,意,部分修补一二·九WMP更新。 (请参见这篇文章)。这就是当事情停止工作(在IE)。

On December 9, 2008, Microsoft released another Windows Media Player security update. Everything still worked like before (for me). This was followed with another update on Jan 13, 2009, intended, in part, to patch the December 9th WMP update. (see this article). That is when things stopped working (on IE).

现在IE7(XP系统)呈现的无级的对象作为东西看起来像一个滚动邮件插槽。它们是关于作为一个液晶屏上的邮件插槽为有用的。而IE浏览器,满意它做它的工作,忽略了与嵌套在正确的CLSID的第二个对象。

Now IE7 (on XP) renders the no-class objects as something that looks like a mail-slot with a scrollbar. They are about as useful as a mail slot on an LCD screen. And the IE browser, satisfied it has done it's job, ignores the second object with the correct CLSID nested within.

所以IE自身的条件注释的让我出了泡菜在这里,但它是微软抛出一个扳手插入自己的浏览器!为什么微软?为什么呢?

So IE's own conditional comments got me out of a pickle here but it was Microsoft that threw a wrench into its own browser! Why Microsoft? Why?

这篇关于2009年1月微软更新打破了IE7的MP3声音对象的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆