Заставить SWFObject использовать EMBED вместо OBJECT

Можно ли заставить SWFobject вставлять вспышку, используя embed тег вместо значения по умолчанию object тег? Прямо сейчас я использую это:

swfobject.embedSWF(url, 'player', width, height, "8", null, null, params, attrs)

Это приводит к чему-то вроде:

<object type="application/x-shockwave-flash" id="player" data="/player.swf">
    <param name="allowScriptAccess" value="always">
</object>

Но я хотел бы вставлять с помощью embed вместо этого для Chrome, так как я подозреваю, что могу решить некоторые из таинственных багов, таких как position: fixed.

1 ответ

Решение

Краткий ответ: Нет.

Основной целью SWFObject 2.x было избежать использования embed тег, так как он не является стандартом в HTML 4 или XHTML и не поддерживает резервный контент. Поэтому нет embed опция в SWFObject 2. (FWIW, SWFObject 2.x предшествует HTML5 и кодификации embed как стандарт.)

Вы можете попробовать использовать SWFObject 1.5, который использовал embed для IE и object для всего остального, но вам придется изменить исходный код, чтобы добавить форк для Chrome.

Вот что я бы сделал, если бы я был на вашем месте:

  1. Попробуйте SWFObject 2.3 beta. Он все еще использует object элемент, но имеет много обновлений.
  2. Попробуйте вручную написать тег для встраивания, чтобы увидеть, исправит ли он ваши проблемы. В этой статье приведен пример кода, который вы можете изменить в соответствии со своими потребностями.
Другие вопросы по тегам