2009-09-24 5 views
7

Я использую следующий код для показа видео на YouTube.Почему мое встроенное видео YouTube работает в Firefox, но не в Internet Explorer?

<object width="425" height="344"> 
    <param name="movie" 
      value="**URL**"> 
    </param> 
    <param name="allowFullScreen" 
      value="true"> 
    </param> 
    <embed src="**URL**" 
      type="application/xshockwave-flash" 
      allowfullscreen="true" 
      width="425" 
      height="344"> 
    </embed> 
</object> 

Он работает в Firefox, но почему он не работает в Internet Explorer?

Я совершенно новой для веб-разработки, поэтому я бегу на все эти замечательные несоответствия, которые вы ветераны привыкли;)

ответ

7

Попробуйте это:

<object type="application/x-shockwave-flash" data="VID_URL" width="425" height="344"> 
    <param name="movie" value="VID_URL" /> 
</object> 
+0

что сделал, спасибо! – BeachRunnerFred

+0

Большое вам спасибо. Я искал действительно трудно найти решение для него, и вот оно. – Blerta

+2

Он все еще не заставлял меня работать для меня ... – esp

8

Чтобы выяснить, его не работает, потому что тег object является неполным. Firefox отказывается от элемента object и вместо этого использует резервный старую школу embed. IE не поддерживает embed, так что вы ничего не получаете.

object элемент должен по крайней мере, иметь атрибут type, говоря, что это плагин для использования и атрибут data говоря ему, что отправить плагин. В IE вам также необходимо отразить атрибут data в значении <param name="movie"> внутри объекта, потому что он запускает плагины по-разному.

IE не будет «обтекать» частично загруженные файлы Flash таким образом. Чтобы получить это, вы должны использовать ActiveX classid вместо type, чтобы сообщить, какой плагин использовать. Если вас это волнует (а вы не можете: для маленьких файлов, загрузчиков-заглушек и файлов, которые бесполезны до завершения, это не имеет значения), тогда вам нужно начать обслуживать комбинации вложенных объектов или вложений, которые quickly becomes confusing.

1

Раньше в течение нескольких часов работала по той же проблеме. Различная причина, хотя ...

Для IE9, YouTube встраивает (по крайней мере, iframes), не работал, потому что ранее я добавлял защиту отслеживания в IE для рекламных серверов Google. В этом случае мне пришлось отключить защиту слежения (Safety> Tracking Protection) или нажать кнопку сразу справа от адресной строки («Некоторое содержимое фильтруется на этом сайте»), которое предупреждает конечных пользователей об отфильтрованном контенте.