Я использую uikit slideset который преобразует html с специальными атрибутами в свой код
Например
<div data-uk-slideset="{default: 4}">
<ul class="uk-grid uk-slideset">
<li>...</li>
<li>...</li>
</ul>
<ul class="uk-slideset-nav">...</ul>
</div>
ul class="uk-slideset-nav".../ul после загрузки страницы будет содержать уже не три точки, а навигацию, созданную в зависимости от количества li.../li и прочих js настроек в data-uk-slideset
Суть в том, что мне нужно чтобы эти элементы появлялись после клика на какой-то объект на странице, но если написать на jquery что-то вроде
$('.myobject').click(function() {
$(this).html('<div data-uk-slideset="{default: 4}"><ul class="uk-grid uk-slideset"><li>...</li><li>...</li></ul><ul class="uk-slideset-nav">...</ul></div>');
});
то соответственно ничего из этого не выйдет
более того, если даже сначала на какой-нибудь странице это запустить, а потом скопировать уже переделанный html код это слайдсета и попробовать добавить его этим же способом через html() в .myobject, то тоже ничего работать не будет..
единственный вариант - это дать слайдсету создаться при загрузке страницы в каком-нибудь невидимом контейнере, а потом его оттуда переместить и сделать видимым, например так:
<div class="myslideset" style="display:none">
<div data-uk-slideset="{default: 4}">
<ul class="uk-grid uk-slideset">
<li>...</li>
<li>...</li>
</ul>
<ul class="uk-slideset-nav">...</ul>
</div>
</div>
$('.myobject').click(function() {
$(this).html( $('.myslideset') ).children('.myslideset').css("display","block");
});
и это работает, но получается элемент создаётся
и подгружаются картинки даже тем людям, которым это не нужно.
Но я знаю каким людям это будет нужно, так как у них перед этим в sql базе данных есть специальное значение. Суть в том, что допустим это супер посещаемый сайт - 100 000 уникальных в день.. Все на одной странице.
Что лучше - сделать проверку
у каждого при каждой загрузке страницы на наличие этого значения через php и только им подгружать этот слайдсет, то есть:
ПХП:
> Подключение к базе данных
> Выяснение есть ли у человека это значение
> Если нет - ничего, если есть -
echo 'тут слайдсет (также невидим, но при клике перемещается и делается видимым, но картинки загрузятся
сразу, до клика)'
> В конце - закрытие базы данных
Я не знаю насколько это ресурсно затратно, но предполагаю что очень, (1)если нет - то сделаю так.
(2)Если да, то не пожалею людей и не пожалею трафика и буду грузить
всем эти картинки, даже если они их никогда и не увидят.
Пока писал, уже почти точно решил не заморачиваться и поступить (2) способом, так как на самом деле сейчас посмотрел что картинок там всего на 300 килобайт, тем более они же будут кешироваться..
Поэтому перепоставлю вопрос, просто ради интереса - Насколько затратно так использовать подключения к базе данных sql при каждой загрузке страницы, если к примеру на сайте 100 000 уникальных людей в день? или если 50 000?)