2013-06-21 5 views
0

HELLO У меня есть этот код, который загружает контент через вызов AJAX, это видео vimeo и работает, когда я ставил статический код ... но не с динамически загружаемым контентом, я пробовал много решений, но не работал для мне любая помощь будет appriciated вот код:prettyPhoto с динамическим контентом JQuery AJAX

$(document).ready(function(){ 
    $("a[data-rel^='prettyPhoto']").prettyPhoto(); 
    $(".category").click(function(){ 
     var categoryid = $(this).data('categoryid'); 
      $.ajax({ 
       url:'<?php echo base_url() ?>main/getPortfolioVideos', 
       type:'POST', 
       data: { category_id: categoryid, page_slug: "index" } 
       }).done(function(data){ 
        var rows = $.parseJSON(data); 
        var videodata = ""; 
        $(rows).each(function(index, value){ 
          $.each(value, function(k, v){ 
           if(k == "video_link"){ 
            videodata += '<article class="entry"> <a data-rel="prettyPhoto" href="http://vimeo.com/'+ v +'">'; 
            videodata += '<iframe src="http://player.vimeo.com/video/'+ v +'" width="270" height="160" frameborder="0" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen="">'; 
            videodata += '</iframe><span class="video-hover"></span> </a> </article>'; 
           } 
           console.log(k+":"+v); 
          }); 
        }) 
        $(".portfolio").html(videodata); 
       }); 
    }); 
}); 

ответ

1

Извините за поздний ответ, у меня сегодня такая же проблема. Таким образом, я исправил его следующим образом - просто добавлен код функции успеха.....................................

Во-первых, написать функцию-обертку:

function prettyPhotoLoad() 
{ 
    // apply prettyPhoto plugin for video previews 
    $("a[rel^='prettyPhoto']").prettyPhoto();  
} 

Применить довольно фото, когда документ готов:

$(document).ready(function() 
{ 
    prettyPhotoLoad(); 
} 

Сделать Ajax вызова и возобновлять довольно фото:

$.ajax(
{ 
    url: base_url + "/ajax/ShowMoreWebResults",  
    success: function(myVal) 
    { 
     $("#resultsContainer").append(myVal.content); 

     // load pretty photo 
     prettyPhotoLoad(); 
    } 
}); 

Примечание : Я разрешил свою проблему, используя строку "$("a[rel^='prettyPhoto']").prettyPhoto();". Спасибо за этот ответ.