Swfobject — альтернативное содержимое загружается до flash

#flash #swfobject

#flash #swfobject

Вопрос:

На моей странице есть флэш-карта. Моя проблема в том, что когда страница загружается некоторое время, я вижу альтернативный контент, а затем карту.

HTML:

    <div class="flash-wrapper">
     <div id="flash-map" class="flash">
       <div id="noflash">
         <p>
           <span>Aby poprawnie wyświetlić tę stronę prosimy o zainstalowanie<br />programu Adobe Flash Player.</span>
            <a class="FlashAltButton" href="http://www.adobe.com/go/getflashplayer" title="Pobierz Adobe Flash Player"><img src="/pl/img/get_flash_logo.png" alt="Pobierz Adobe Flash Player" width="158" height="39" /></a>
         </p>
       </div>
    </div>
  </div>
  

SWFOBJECT:

            swfobject.embedSWF("http://site/flash/contest/map.swf", 
                  "flash-map", 
                  "410", 
                  "365", 
                  "9.0.0", 
                  "http://site/flash/contest/expressInstall.swf",
                  flashvars, 
                  params
        );

    var params = {
    quality: 'high',
    bgcolor: '#ffffff',
    play: "true",
    loop: "true",
    wmode: "transparent",
    scale: "showall",
    menu: "true",
    devicefont: "false",
    salign: "",
    allowFullScreen: "true",
    allowScriptAccess: "sameDomain"
  };
  

Ответ №1:

Я считаю, что то, что вы видите, — это раздражающий FOUC (вспышка неустановленного содержимого). Если загружаемый SWF-файл слишком тяжелый (или соединение слишком медленное), иногда случается, что страницы отображаются до полной загрузки содержимого (в наши дни это довольно часто встречается с таблицами стилей CSS).

Единственное решение, которое я могу придумать прямо сейчас, — это установить для альтернативного содержимого значение «видимость: скрыто», а затем, если Flash отсутствует, сделать его видимым с помощью Javascript. Единственная проблема заключается в том, что если у клиента нет Flash и нет Javascript, у него не будет содержимого… поэтому я хотел бы услышать различные решения для этого!

Комментарии:

1. измените swf, чтобы ваш первый кадр загружался довольно быстро добавьте предварительный загрузчик для оставшихся КБ.