запуск сценария до отображения страницы - PullRequest
4 голосов
/ 04 октября 2011

Я создал сайт, который выполняет кучу вычислений при загрузке страницы (в основном он определяет размер экрана пользователя, затем назначает все размеры и позиции изображений страницы и применяет их). У меня проблема с медленным соединением, это видно (все изображения начнутся в углу, затем изменят размер и переместятся). Это не большое дело, но это своего рода бельмо на глазу.

Я использую jquery для этого, и все вычисления происходят на $(document).ready, есть ли способ сделать это раньше? Или я должен использовать preloader? Что хорошо (queryLoader не работал для меня, и все остальные, которые я могу найти, предназначены только для предварительной загрузки изображений).

Любые предложения будут высоко оценены!

Ответы [ 4 ]

3 голосов
/ 04 октября 2011

Если вы беспокоитесь только об изображениях, как насчет того, чтобы сделать их невидимыми (отображать: нет) до тех пор, пока они не будут перемещены?

2 голосов
/ 04 октября 2011

Чтобы расширить ответ Джо, проще всего было бы скрыть все изображения до их загрузки. Например, что-то вроде этого:

$(function() {
  $('img').hide();
  $('img').load(function() { $(this).show() });
});

Вы можете даже предварительно скрыть их с помощью CSS, но я бы не советовал этого делать, если только вышеприведенный метод все еще немного мигает.

0 голосов
/ 04 октября 2011

Я столкнулся с проблемой в среде iframe.Но в настоящее время я использовал следующий обходной путь, чтобы избежать травмы глаз:

<style>
   .load_class{
            display:block;
            position:absolute;
            top:0;left:0;
            background-color:#fff;width:100%;height:100%;
            z-index:9990;
            text-align:center;
        }
</style>
<script>
   setTimeout("loadingComp()",15000);

   function loadingComp(){
        jQuery("#i_init").fadeOut();
    }
</script>
<div id="i_init" class="load_class">
 <img src="images/loading.gif" alt="Loading..."/>
             Loading...
</div>

, но это решение с жестким кодомdiv исчезнет через 15 секунд: (

0 голосов
/ 04 октября 2011

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

...