Очень долго загружается Javascript [закрыто]

683
24 ноября 2016, 10:02

Здравствуйте. Хочу попросить совет у вас. Есть многостраничный сайт, на сайте куча js скриптов, все работает хорошо. Но на одной из страниц сайта (для зареганых пользователей, в личном кабинете, страница объявления -> добавление объявления) скрипт ( просто модалка fancybox) работает очень медленно. На остальных страницах все работает быстро и без нареканий ( ссылка, которая вызывает скрипт располагается в шапке сайта). Медленно он загружается на странице где есть форма, которая так же выбирает города, регионы итд ( код ниже). Данные берутся из контекста! В Хроме загрузка идет 25-28 секунд. в FireFox - 2,5 сек.

{% load hosts %} 
<div class="b-header"> 
    <div class="b-header__menu"> 
        <div class="container"> 
            <div class="row"> 
                <div class="col-xs-12"> 
                    <div class="b-menu"> 
                      <a>...</a> 
                      <a>...</a> 
                      <a>...</a> 
                      <a>...</a> 
                        <span class="b-menu__item btn_change-location"> 
                        <a href="#change-location" class="fancybox dashed"> 
                        {% if user.is_authenticated %} 
                            Просмотр объявлений на территории: 
                            {% if user.districts.all.count > 1  %} 
                                {% for district in user.districts.all %} 
                                    {% if forloop.last %} 
                                        <span>{{ district }}</span> 
                                    {% else %} 
                                        <span>{{ district }},</span> 
                                    {% endif %} 
                                {% endfor %} 
                            {% else %} 
                                {% for district in user.districts.all %} 
                                    <span>{{ district }}</span> 
                                {% endfor %} 
                            {% endif %} 
                            {% if user.regions.all.count > 1  %} 
                                {% for region in user.regions.all %} 
                                    {% if forloop.last %} 
                                        <span>{{ region }}</span> 
                                    {% else %} 
                                        <span>{{ region }},</span> 
                                    {% endif %} 
                                {% endfor %} 
                            {% else %} 
                                {% for region in user.regions.all %} 
                                    <span>{{ region }}</span> 
                                {% endfor %} 
                            {% endif %} 
                            {% if user.cities.all.count > 1  %} 
                                {% for city in user.cities.all %} 
                                    {% if forloop.last %} 
                                        <span>{{ city }}</span> 
                                    {% else %} 
                                        <span>{{ city }},</span> 
                                    {% endif %} 
                                {% endfor %} 
                            {% else %} 
                                {% for city in user.cities.all %} 
                                    <span>{{ city }}</span> 
                                {% endfor %} 
                            {% endif %} 
                        {% else %} 
                                Просмотр объявлений на территории: 
                        {% endif %} 
                            
                        </a> 
                        </span> 
                    </div> 
                </div> 
            </div> 
        </div> 
    </div> 
   

Шаблон модалки ( получение данных из контента)

{% load hosts %} 
{% load widget_tweaks static %} 
<div id="change-location"> 
<form action="{% host_url "setlocation" host "www" %}" method="post"> 
    {% csrf_token %} 
 
    <div id="chose-city-wrap"> 
        <div class="b-modal__title">Выберите ваш город</div> 
        <p> 
            <div class="b-modal__item"> 
                <span>{{ location_form.country.label }}</span> 
                {{ location_form.country }} 
            </div> 
        </p> 
        <p> 
            <div class="b-modal__item"> 
                <span>{{ location_form.districts.label }}</span> 
                {{ location_form.districts }} 
            </div> 
        </p> 
        <p> 
            <div class="b-modal__item"> 
                <span>{{ location_form.regions.label }}</span> 
                {{ location_form.regions }} 
            </div> 
        </p> 
        <p> 
            <div class="b-modal__item"> 
                <span>{{ location_form.cities.label }}</span> 
                {{ location_form.cities }} 
            </div> 
        </p> 
 
 
        <br /> 
 
        <div class="b-modal__item b-modal__item_btn"> 
            <input class="b-btn b-btn_red" type="submit" value="Сохранить"> 
        </div> 
    </div> 
</form> 
</div>

Форма загрузки городов на странице где тормозит модалка!

<fieldset> 
        <legend>Территория распространения объявления</legend> 
 
        {{ form.country|add_class:"b-input__input js-select" }} 
        {{ form.districts|add_class:"b-input__input js-select chosen-select" }} 
        {{ form.regions|add_class:"b-input__input js-select chosen-select" }} 
        {{ form.cities|add_class:"b-input__input js-select chosen-select" }} 
        {# form.geo|add_class:"b-input__input" #} 
 
    </fieldset>

Answer 1

Если скрипт стоит в шапке, то стоит посмотреть что грузится перед ним. Это, вероятно, css и другие скрипты. На этой странице в css могут быть указаны какие-нибудь большие картинки, например. Посмотрите вкладку network в консоле разработчика, чтобы точно узнать, что именно грузится.

READ ALSO
Прокрутка вниз на открывшийся блок

Прокрутка вниз на открывшийся блок

есть кнопка <button id="cb-btn" data-toggle="collapse" data-target="#cb">Кнопка</button> , которая раскрывает/закрывает блок <div id="cb" class="row collapse"><!-- Содержимое...

430
Добавить if чтоб все не сломалось)

Добавить if чтоб все не сломалось)

Как добавить условие if, чтобы ничего не сломалось, или по другому решить эту задачу?.

450
Изменение цвета текста с помощью Jquery

Изменение цвета текста с помощью Jquery

Здравствуйте, пытаюсь усовершенствовать обработку формы с текстом, с помощью jquery. Скрипт выводит успешно сохраненные в БД данные,пришедшие...

470