Блокировать загрузку iframe, пока не виден asp.net - PullRequest
0 голосов
/ 21 ноября 2018

У меня есть страница на веб-сайте с вкладками вверху.Каждая вкладка при нажатии показывает отдельный раздел.Каждый раздел имеет несколько фреймов.

Моя проблема в том, что при загрузке страницы с вкладками она загружается медленно, потому что загружает все iframes сразу на всех вкладках.

Я ищу способзагружать только видимые фреймы.Есть ли способ заблокировать загрузку iframe, например, настроить его источник при нажатии на вкладку, или еще более простой способ загрузить его, когда отображается = true?

Поиск по блогам и веб-сайтам, всея нахожу, почему это плохо использовать iframe и альтернативы iframe.В моем случае использование iframes очень практично.

Вот пример одной из вкладок HTML, которая находится внутри тега div:

<div class="single" id="Company_Options">
                    <fieldset style="margin-top:-10px; border: 1.5px solid #00659c; height:auto;">
                        <legend style="color:#00659c;font-weight:bold;font-size:20px;" id="Company_Title" runat="server"></legend>
                        <table style="width:100%; margin-top:-10px; margin-bottom:-30px;">
                            <tr>
                                <td style="width:50%;">
                                    <fieldset>
                                        <legend style="color:#00659c;font-weight:bold;font-size:15px;" id="Company_Country_Title" runat="server"></legend>
                                        <iframe id="iframeCountryList" frameborder="0" scrolling="auto" width="100%" height="100%" src="CountriesList.aspx" style=""></iframe>
                                    </fieldset>
                                </td>
                                <td style="width:50%;">
                                    <fieldset>
                                        <legend style="color:#00659c;font-weight:bold;font-size:15px;" id="Company_Currencies_Title" runat="server"></legend>
                                        <iframe id="iframeCurrencyList" frameborder="0" scrolling="auto" width="100%" height="100%" src="CurrenciesList.aspx" style=""></iframe>
                                    </fieldset>
                                </td>
                            </tr>
                            <tr>
                                <td style="width:50%;">
                                    <fieldset>
                                        <legend style="color:#00659c;font-weight:bold;font-size:15px;" id="Company_Departments_Title" runat="server"></legend>
                                        <iframe id="iframeDepartmentList" frameborder="0" scrolling="auto" width="100%" height="100%" src="DepartmentList.aspx" style=""></iframe>
                                    </fieldset>
                                </td>
                                <td style="width:50%;">
                                    <fieldset>
                                        <legend style="color:#00659c;font-weight:bold;font-size:15px;" id="Company_Divisions_Title" runat="server"></legend>
                                        <iframe id="iframeDivisionList" frameborder="0" scrolling="auto" width="100%" height="100%" src="DivisionList.aspx" style=""></iframe>
                                    </fieldset>
                                </td>
                            </tr>
                        </table>
                    </fieldset>
                </div>

Когда вкладка установлена ​​следующим образом:

Company_Options.Visible = false;

Содержимое iframe по-прежнему загружается.

Мне нужно что-то вроде этого псевдокода:

iframeCountryList.Render = false;
iframeCurrencyList.Render = false;
iframeDivisionList.Render = false;
iframeDepartmentList.Render = false;
Company_Options.Visible = false;

Любые идеи о том, как я могу заблокировать рендерингiframe, будь то в C # в коде позади или на стороне клиента javascript?Спасибо!

1 Ответ

0 голосов
/ 21 ноября 2018

Вы можете создать элемент управления для него.Заполните атрибут как data-src вместо src при инициализации.src можно скопировать из data-src, когда вам нужно загрузить содержимое iframe.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...