Я пытаюсь заархивировать следующее.
- Отправка ajax-запроса в файл, запрашивающий необходимые данные из API YouTube.
- Создайте внутри Ajax-запроса необходимые Preview-Images.
- Отправьте обратно HTML как ответ Ajax.
- Поместите ответ ajax в определенный контейнер.
- Загрузите значения внутри контейнера с помощью jquery lazy, когда пользователь получит их в представлении.
Точки с 1 по 4 в порядке, но они всегда загружают все изображения сразу после загрузки страницы.
$(document).ready(function () {
$.ajax({
url: 'get_social_media_content.php',
type: 'POST',
success: function(data){
var parts = data.split('|')
var type = parts[0]
var text = parts[1]
if(type==2){}
else {
$('#youtube').html(type);
$('.lazy').lazy({effect: 'fadeIn'});};},
});});
А это код из Ajax, называемый php file.
foreach ($youtube["items"] as $key => $value){
if(!empty($value['snippet']['thumbnails']['standard']['url']))
{$imageurl=$value['snippet']['thumbnails']['standard']['url'];}
else {$imageurl=$value['snippet']['thumbnails']['high']['url'];}
$youtubeimagedatasingle[] =
'<div class="lazy col-md-6 col-lg-6 item" id="loaddata">
<img class="lazy responsive" data-src="'.$imageurl.'" >
<div class="top-left">'.$value['snippet']['title'].'</div>
</div>';
$youtubevideodatasingle[] = '<div class="col-md-6 col-lg-6 item" id="loaddata">
<div class="video-container"><iframe width="500" height="281" src="https://www.youtube.com/embed/'.$value['snippet']['resourceId']['videoId'].'?feature=oembed" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe></div>
</div>';
}
$youtubeimagedata = implode("",$youtubeimagedatasingle);
$youtubevideodata = implode("",$youtubevideodatasingle);
print_r($youtubeimagedata."|".$youtubevideodata);
Так что я думаю, что есть только небольшая проблема, которую я не видел, чтобы знать.
Не могли бы вы помочь мне с этим?
Поздравления: D