通过javascript函数调用Fancybox iframe时不工作

通过javascript函数调用Fancybox iframe时不工作,javascript,jquery,fancybox,fancybox-2,Javascript,Jquery,Fancybox,Fancybox 2,我试着在fancybox中调用iframe,但它不起作用 以下是我写的: var paramsFancy={ 'transitionOut': 'elastic', 'transitionIn': 'elastic', 'speedOut': 300, 'speedIn': 500, 'autoScale': true, 'centerO

我试着在fancybox中调用iframe,但它不起作用

以下是我写的:

        var paramsFancy={
            'transitionOut': 'elastic',
            'transitionIn': 'elastic',
            'speedOut': 300,
            'speedIn': 500,
            'autoScale': true,
            'centerOnScroll': true,
            'autoDimensions': true,
            'href' : '/index.php'
        };
        $.fancybox.open(paramsFancy);
我读了《人物》杂志的评论,但没有什么对我有用

有人能帮忙吗?

这应该可以:

    var paramsFancy={
        'transitionOut': 'elastic',
        'transitionIn': 'elastic',
        'speedOut': 300,
        'speedIn': 500,
        'autoScale': true,
        'centerOnScroll': true,
        'autoDimensions': true,
        'href' : '#contentdiv',
        'type': 'iframe'
    };
    paramsFancy.href='/index.php';
    $.fancybox.open(paramsFancy);

如果您使用的是fancybox v1.3.4(我猜是因为上面代码中的API选项),那么您需要执行以下操作:

$.fancybox(paramsFancy);
。。。因为
$.fancybox.open()
不是v1.3.x及以下版本的有效方法。它是为v2.x及更高版本引入的

此外,如果要打开
iframe
,则需要在设置中添加
type
API选项,如:

var paramsFancy = {
    transitionOut: 'elastic',
    transitionIn: 'elastic',
    speedOut: 300,
    speedIn: 500,
    autoScale: true,
    centerOnScroll: true,
    autoDimensions: true,
    href : '/index.php',
    type: "iframe" // need this for external pages
};

$.fancybox(paramsFancy);
请参见使用fancybox v1.3.4的


另一方面,如果您确实在使用fancybox v2.x,则需要更新API选项,如:

var paramsFancy = {
    closeEffect: 'elastic', // transitionOut
    openEffect: 'elastic', // transitionIn
    closeSpeed: 300, // speedOut
    openSpeed: 500, // speedIn
    fitToView: true, // autoScale
    autoCenter: true, // centerOnScroll
    autoSize: true, // autoDimensions
    href: '/index.php',
    type: "iframe" // you still need this
};
注意我注释掉了v1.3.4的选项

那你可以用

$.fancybox(paramsFancy);

。。。因为第一种方法是向后兼容的


请参见使用fancybox v2.1.5的,我也尝试了这段代码,但当我没有编写行paramsfance.href='/index.php'时;然后fancybox打开(参见屏幕截图),当我添加该行时,什么也没有出现。
$.fancybox.open(paramsFancy);