fancybox链接不适用于ajax内容

时间:2012-01-13 16:20:46

标签: javascript jquery ajax fancybox

我需要经常使用ajax,jquery和php更新我网站上的部分。

首次加载页面时,它会调用一个显示该部分内容的javascript函数。然后使用json检查更新,如果有结果,则调用相同的函数来显示它。

现在在ajax内容中有像

这样的链接
<a href="news.php?id" class="ajaxpopup">title</a>

调用fancybox但不是打开弹出窗口,而是直接打开页面。 如果调用fancybox的链接不在ajax内容中,则会正确显示。 我知道有些人有同样的问题,但答案是针对具有特定ID的div。 如何在全球范围内设置它。我的意思是使用class =“ajaxpopup”来处理链接?

这是我调用内容的功能

$(document).ready(function() {
  $(".ajaxpopup").fancybox({
    'overlayColor'      : '#000000', 
    'centerOnScroll'    : true,
    'transitionIn'      : 'none',
    'transitionOut'     : 'none',
    'modal'             : true
  }); 
});

function update(page,value)    {
  var data = 'id='+value;
  $.ajax({
    url: page,
    type: "POST",       
    data: data,     
    cache: false,
    success: function (html) {  
      $('#updates').html(html);   
      $('#updates').fadeIn(200);      
    }       
  });
}

然后是divs

1 个答案:

答案 0 :(得分:0)

加载动态内容后,再次绑定花式框

 div.load("myserverpage.aspx?mode=popularmodels", { symbol: $("#txtSymbol").val() }, function() {
                $(this).fadeIn(100);

                $(".ajaxpopup").fancybox({
                    'scrolling': 'no',
                    'titleShow': true,
                    'titlePosition': 'over',
                    'onClosed': function () {
                        $("#login_error").hide();
                    }
                });
            });