Несколько вещей, чтобы попробовать:
Использование статическая публикация .
embedSWF()
ждет, пока HTML DOM не будет готов, перед заменой содержимого на swf. При статической публикации браузеры, поддерживающие стандартный способ встраивания объектов без использования javascript, начнут загружать swf, как только они попадут в элемент <object>
, а затем swfobject исправит все в javascript, когда DOM будет готов. Это должно дать немного более быстрое отображение вашего SWF.
Переместите еще больше javascript вниз страницы, если это возможно.
(Я редко так делаю, но), поскольку любой javascript будет блокировать синтаксический анализ DOM (в большинстве браузеров) до тех пор, пока скрипт не будет (загружен и) выполнен, это означает, что он попадет в swf позже.
Это будет иметь реальное значение только для статической публикации, поскольку динамическая публикация будет по-прежнему ждать готовности DOM. DOM ready still не будет работать до тех пор, пока все скрипты на странице не будут загружены и выполнены, что должно занять примерно одно и то же время независимо от того, где они размещены (если перемещение скриптов вниз не избавит от других проблемы с блокировкой).
Поиграйте с createSWF (не рекомендуется)
createSWF()
не ждет готовности DOM. В настоящее время я мало представляю внутреннюю работу swfobject с точки зрения манипулирования DOM, но - в случае динамической публикации - это можно назвать сразу после добавления заполнителя. Заполненная часть DOM к этому времени готова (в основном) (см., Например, здесь ).
Но это все зависит от того, какие другие части страницы swfobject желает рассмотреть за кулисами в эти дни, и что это может сделать в будущих версиях. Любые манипуляции с DOM до того, как DOM готов, также могут привести к тому, что в некоторых случаях браузер будет визуализировать детали дважды, что, очевидно, не влияет на производительность. Короче говоря, не рекомендуется.