Ну, я пытаюсь сделать $('element').load()
звонок. Потому что я хочу загружать контент только на десктопы и планшеты, а не на мобильные. Поэтому, чтобы избежать избыточности данных, я делаю следующее (после моего $(document).ready(func...)
):
$('section[data-showif="only-sm"]').each(function(index) {
if($(window).width() > 992)
$(this).load("/html/" + $(this).data("htmlinclude") + ".html");
});
У меня есть раздел со следующими данными:
<section id="github-cards" data-showif="only-sm" data-htmlinclude="github-cards-content">
</section>
А потом, в моем html/github-cards-content.html
файле у меня есть это:
<div class="container gitcards">
<div class="row">
{% for repo in site.data.repos %}
<div class="col-md-4">
<div class="github-card" data-github="{{ repo }}" data-theme="default"></div>
</div>
{% endfor %}
</div>
</div>
Это не важно, но я использую Github Cards для отображения своих проектов.
И это мой файл в формате yml: _data/repos.yml
:
- "uta-org/QuickFork"
- "uta-org/ZWSetup"
- "uta-org/uzLib.Lite"
Это прекрасно работает, если я просто помещаю содержимое из github-cards-content.html
в свой раздел. Но если я сделаю то, что объяснил, появится код Liquid (я хочу этого избежать).
Я мог бы представить, что не могу загрузить жидкие шаблоны / контент без вызова {% include file... %}
, но я хочу знать, есть ли обходной путь для этого.
EDIT:
Вот что парень сказал:
Жидкость отображается на стороне сервера, поэтому вы не сможете визуализировать
жидкость после загрузки страницы с помощью jquery. Вы можете обойти это
вставьте любой код, находящийся в 'liquidcode.html' из
в самом начале, но скрывая это, добавляя класс в div с
дисплей установлен на нет. Затем вы можете удалить этот класс, когда пользователь
нажимает на «Клик».
https://stackoverflow.com/a/44398827/3286975
Я мог бы представить что-то подобное. Но есть ли плагин, который заставляет сервер рендериться, не отправляя данные клиенту до тех пор, пока он не понадобится? (Мне это нужно, потому что в мобильном устройстве мне нужно избегать как можно меньшего количества данных, которые должны быть отправлены клиенту из-за роуминга)