从函数中打开带有 iframe 的花式框弹出窗口

Open fancybox popup with iframe from a function

本文关键字:窗口 iframe 函数      更新时间:2023-09-26

我已经在 Stackoverflow 中搜索了足够多的内容,但我无法找到一个线程来回答我的问题。

以下是我的场景,

function openVideo(videoid,urlid){
        var videourl = 'http://localhost/ptchoice-local/welcome/video/'+videoid+'/'+urlid;
        $("a#video_link").fancybox({
                    'type': 'iframe', 
            'width' : 1000,
            'height' : 600,
            'autoDimensions' : false,
            'autoScale' : false,
            'href' : videourl
        });
    $("a#video_link").trigger('click');
    return false;
} 
<a href="#" onclick="openVideo('2134sdf234532sdfs324234','1')">Show video</a>

因此,我想在单击不在锚标记本身中的"打开视频"功能时设置 href 值。

花式盒子版本:jquery.fancybox-1.3.4.pack.js

请对此提出建议。

如果我

正确理解了您的问题,这应该对您有用:

需要向定位点添加 ID:

<a href="#" id="showVideo">Show video</a>

jQuery:

$("#showVideo").click(function () {
    var videourl = 'http://localhost/ptchoice-local/welcome/video/2134sdf234532sdfs324234/1';
    $("#video_link").fancybox({
        'type': 'iframe', 
        'width' : 1000,
        'height' : 600,
        'autoDimensions' : false,
        'autoScale' : false,
        'href' : videourl
    });
    $("#video_link").trigger('click');
});

由于在您的示例中,视频 id 和 urlid 是硬编码的,因此我在这里做了同样的事情。 如果需要,它们可以是变量 - 只需以相同的方式设置它们即可。

你可以

这样做。

function openVideo(videoid,urlid) {
    var videourl = 'http://localhost/ptchoice-local/welcome/video/'+videoid+'/'+urlid;
    $.fancybox.open({
        href: videourl,
        type: 'iframe',
        padding: 0
    });
}