Advertisement
Guest User

Tentando fazer lazyLoading

a guest
Feb 21st, 2019
118
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.     const getVideos = function(){
  2.         const id = $("main").attr("id");
  3.         const datasend = { action: 'getVideosPage', id_page: id };    
  4.         $.ajax({
  5.             type : "GET",
  6.             data: datasend,
  7.             dataType: "json",
  8.             url: ajaxLoad_ajaxurl,
  9.         //beforeSend: console.log("loading"),
  10.         success: ( data ) => {            
  11.             if(typeof data != "undefined" && typeof data !== null && typeof data != undefined) {
  12.                 getThumbnails(data);
  13.             }else{
  14.              console.log("Error");
  15.          }
  16.      }
  17.  });
  18.     };
  19.  
  20.     const getThumbnails = ( data ) => {
  21.         let videosLinks = ""+data.urls.map( fullUrl => {
  22.             return fullUrl.split('watch?v=')[1];
  23.         });        
  24.  
  25.         fetch(`https://www.googleapis.com/youtube/v3/videos?id=${videosLinks}&key=AIzaSyB-IJknHsbodH4-ZkVVJOpPdF-W1GDgamU&part=snippet`)
  26.         .then( response  => response.json())
  27.         .then( response => {
  28.             response.items.forEach( createThumbnail );
  29.         }).then(() => {
  30.              $('.vp-on-pageload-wrap').load("?vp_on_pageload=t");  
  31.         })        
  32.         .catch( e => console.log(`Erro: ${e}`));
  33.  
  34.     };
  35.  
  36.     const createThumbnail = (item) => {
  37.  
  38.         var image = new Image();
  39.  
  40.         let snippet = item.snippet;
  41.         image.src = snippet.thumbnails.high.url;
  42.         let titulo = snippet.title;
  43.  
  44.         image.addEventListener("load", ()=> {
  45.             let thumbs = `
  46.             <figure>
  47.             <a href="https://www.youtube.com/watch?v=${item.id}" class="vp-s">
  48.             <div class="play_button card yt_play">
  49.                 <span class="icon-play3"></span>
  50.             </div>
  51.             </div>
  52.             <img src="${image.src}">
  53.             </a>
  54.             <h3>${titulo}</h3>
  55.             </figure>`;
  56.  
  57.             $('.videos').append(thumbs);
  58.         });
  59.     };
  60.  
  61.  
  62.     if($("#clips").length)
  63.         getVideos();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement