javascript - 从函数中使用 iframe 打开 fancybox 弹出窗口

标签 javascript jquery fancybox lightbox

我在 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>

所以,我想在点击“openVideo”功能时设置 href 值,而不是在 anchor 标签本身。

Fancybox版本:jquery.fancybox-1.3.4.pack.js

请对此提出建议。

最佳答案

如果我正确理解了你的问题,这应该对你有用:

需要给anchor加上一个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');
});

由于 videoid 和 urlid 在你的例子中是硬编码的,所以我在这里做了同样的事情。如果需要,它们可以是变量 - 只需以相同的方式设置它们即可。

关于javascript - 从函数中使用 iframe 打开 fancybox 弹出窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14521803/

相关文章:

javascript - 使用 jQuery 更改第一个跨度的文本

jquery - FancyBox 不工作。获取 "RangeError: Maximum call stack size exceeded"

jquery - 在 fancybox transitionOut 上重新加载父页面

javascript - OSX safari/firefox 上的原型(prototype)日期格式验证错误

jquery - 切换类不起作用

javascript - fancybox-1.3.4 在 iE8 中不工作

javascript - 行为异常 : can you explain?

javascript - 如何将日期和时间输入的值合并到一个日期对象?

javascript - Javascript 中的逗号

Javascript 查找编辑距离未返回正确值