我不知道我应该做什么

时间:2013-06-10 10:00:40

标签: jquery flash popup fancybox fancybox-2

我一直试图让一个SWF文件在FancyBox中运行。 FancyBox本身工作正常,我遇到的唯一麻烦就是当我使用SWF文件时。

这是HTML部分:

<div id="box-6" class="box"> <a class="various" href="content/test.swf">swf</a>
    <img id="image-6" src="/image_28.png"/>
    <span class="caption scale-caption">
    <h3> test <br><em><font size="1"> test </em></font></h3>
        <p> test </p>
  </span>

这是JS部分,位于我脚本的最顶端:

 <script type="text/javascript">

$(document).ready(function() {

$(".various").fancybox({
    maxWidth    : 800,
    maxHeight   : 600,
    fitToView   : false,
    width       : '70%',
    height      : '70%',
    autoSize    : false,
    closeClick  : false,
    openEffect  : 'none',
    closeEffect : 'none'
});


$('#single_3').fancybox({
    openEffect : 'elastic',
    closeEffect : 'elastic',
    helpers : {
        title : {
            type : 'outside'
        }
    }
});
});

当我点击图像时,没有任何事情发生。

我也试着这样说,但仍然没有发生:

<a id="single_3" <a class="various" href="content/test.swf" title=" test ">swf</a>
<img id="image-6" src="/image_28.png"/>
<span class="caption scale-caption">
<h3> test <br><em><font size="1"> test </em></font></h3>
    <p> test </p>

我不知道我应该做什么。

1 个答案:

答案 0 :(得分:0)

你只需要将fancybox绑定到一个选择器,你的ID或你的类(如果计划将fancybox绑定到几个元素,然后使用类),所以

有这个html:

<a title="Lorem ipsum" class="various" href="content/test.swf">Open SWF</a>

...确保 swf 文件的路径正确

然后,使用单个脚本并在其中设置所有API选项:

jQuery(document).ready(function ($) {
    $(".various").fancybox({
        // all your API options here, whatever they are
        maxWidth: 800,
        maxHeight: 600,
        fitToView: false,
        width: '70%',
        height: '70%',
        autoSize: false,
        closeClick: false,
        openEffect: 'none',
        closeEffect: 'none',
        helpers: {
            title: {
                type: 'outside'
            }
        },
        type: "swf" // you need to say is a swf content
    }); // fancybox
}); // ready

注意我们添加了选项type: "swf",因此fancybox将知道需要处理的type内容。

有关正常工作的示例,请参阅 JSFIDDLE