Возможно ли вывести div lazyload-ом, чтоб этот div по Ctrl+U не видеть?
Всем привет!
Вот сайт (не мой) https://panama.ua/ Там есть блок "Новинки". Если смотреть код сайта (по Ctrl+U, а не в средствах разработчика) этого блока "Новинки" - нет. Т.е. он как-то подгружается. Вопрос: можно ли такое сделать с помощью какой-то jQuery бибилиотеки? Попробовал с помощью https://github.com/emn178/jquery-lazyload-any сделать <div class="lazyload"> <script type="text/lazyload"> <?php print render($page['something']); ?> </script> </div> $('.lazyload').lazyload(); Оно с моим PHP кодом сработалось, но по CTRL+U все равно видно. Может другим способом? |
все что загружено к сожалению будет видно.
|
Но на сайте, который я в пример привел - не видно же. Как сделать подобное?
|
VasyOK,
не видно в коде до того как загрузка выполнена? |
Честно не знаю выполнена ли загрузка.
Захожу на сайт, жму CTRL+U в Firefox-e - и содержимого этого блока не нахожу. Нахожу только обертку этого содержимого, а того что внутри - нет. Пустота там. Естественно Ctrl+F для поиска юзаю. |
http://api.jquery.com/load/ тогда этого вполне хватит
|
Черз load - делаю, но все равно в коде - видно :(
А если не хвататет есть ли JS библиотеки, рашающие подобное? |
Вам по сути нужно дождаться окончания загрузки страницы (или пока пользователь не прокрутит страницу до вашего блока), отправить запрос на сервер и вставить полученные от него данные в блок.
Дело нескольких строк. <div class='lazy-block' data-block-key="new-products"></div> <script> $('.lazy-block').each(function() { this.load('/path/to/asyncHandler.php', { key: this.dataset.blockKey }); }); </script>Сервер должен отдать по полученному ключу (get-параметр key) запрошенный блок. if(!isset($_GET['key'])) exit('Bad Request'); $key = $_GET['key']; if($key == 'new-products') exit('<div>Lazy Block Content</div>'); exit('Not Found'); |
Цитата:
|
Часовой пояс GMT +3, время: 03:34. |