2个FancyBox弹出窗口,overlay-flash类

时间:2011-08-04 12:16:58

标签: fancybox

我们在同一页面上有2个应用程序,每个应用程序使用1个fancybox。第一个基于flex的应用程序加载了一个fancybox:

$(document).ready(function(){ 
    $("a.overlay-flash").fancybox({ 
      'padding' : 0, 
      'width'   : 800, 
      'height'  : 450, 
    }); 
}); 

<a  id="hiddenclickermarketInfoPortlet" class="overlay-flash" href="<%=targetThemeURLStr%>" >Hidden Clicker</a> 

但是当我们加载我们的应用程序并调用我们的fancybox时,似乎第一个fancybox再次被加载。

所以有2个问题

  1. 有没有办法从我们的第二个应用程序中关闭原始的fancybox?
  2. 这个overlay-flash类定义了什么或在哪里?我检查了网络,很多人都在使用这个课程。 (注意第一个加载的应用程序是基于flex的,我们的非基于flex的应用程序)

1 个答案:

答案 0 :(得分:0)

我不确定你是如何打开和设置两个FancyBox的......它意味着是唯一的,因此具有所有元素的ID。

但是,如果您需要关闭FancyBox,请使用the API

$.fancybox.close

如果您需要禁用叠加层,只需使用overlayShow选项:

$("a.fancybox").fancybox({
  overlayShow : false
});

或者因为听起来您可能无法控制选项,请将其添加到您的css:

#fancybox-overlay { display: none !important; }

如果您仍然遇到问题,请分享您正在使用的一些标记和代码


如果您需要将插件应用于fancybox内的内容,请使用onComplete回调

执行此操作
$("a.fancybox").fancybox({
  overlayShow : false,
  onComplete:function(){
    $('#cboxContent').find('input').autocomplete();
  }
});