【问题标题】:"user friendly" vimeo embedding, get embed code from url“用户友好”vimeo 嵌入,从 url 获取嵌入代码
【发布时间】:2015-03-20 12:55:14
【问题描述】:

我正在努力让客户(用户)从 vimeo 获取 iFrame 以播放不同的视频。事实证明,这对我来说比以前预期的要困难。视频的更改必须通过文本框完成。

如果可能的话,我怎样才能像这样提取嵌入代码:

<iframe src="https://player.vimeo.com/video/22439234?title=0&byline=0&portrait=0" width="500" height="281" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>

来自一个网址,例如:https://vimeo.com/22439234?

如何从上面的示例中检索 iframe、src 属性值或我可以使用的任何内容?

我搜索了一堆,但我发现的所有说明都是针对开发人员的......

(我使用的是 Angularjs,所以任何 Javascript 或 Angular 解决方案都可以接受)

编辑:我找到了一个网站,可以做我想做的事,可能会帮助您了解我想做的事..

如果您将https://vimeo.com/22439234 粘贴在那里并按生成,它会输出:

<object type="application/x-shockwave-flash" style="width:450px; height:366px;" data="http://vimeo.com/moogaloop.swf?clip_id=22439234&amp;server=vimeo.com&amp;show_title=0&amp;show_byline=0&amp;show_portrait=0&amp;color=ff9933&amp;fullscreen=1" allowfullscreen="true" allowscriptaccess="always">

Get your own valid XHTML Vimeo embed code

这正是我需要的,除了它不是 iFrame...

http://www.tools4noobs.com/online_tools/vimeo_xhtml/

【问题讨论】:

    标签: javascript iframe vimeo-player


    【解决方案1】:

    这里有一个解决方案:http://jsfiddle.net/ost9y204/

    如果您有用户粘贴 URL 的输入:

    &lt;input id="video"&gt;

    您可以使用此函数解析 Vimeo URL:

    function parseUrl(){
        var val = document.getElementById('video').value;
        var vimeoRegex = /(?:vimeo)\.com.*(?:videos|video|channels|)\/([\d]+)/i;
        var parsed = val.match(vimeoRegex);
    
        return "//player.vimeo.com/video/" + parsed[1];    
    };
    

    当您需要获取 URL 时,只需致电 parseUrl()。然后把返回的值放到iframe的src中。

    【讨论】:

    • 感谢您的回答,我有一个后续问题...我希望使用输出的链接作为网站的背景。我现在遇到的问题是:控件在那里。 (播放、暂停按钮、缓冲条、分享等)你知道如何关闭它们吗? (我正在为其制作这个的客户,将有一个专业帐户。我知道当你有一个专业帐户时可以做到,但我不想自己购买。可以通过代码完成吗?或是从 Vimeo 请求嵌入代码时的设置吗?)
    • @CasNouwens 我知道你可以隐藏一些控件,你可以在文档中看到选项:developer.vimeo.com/player/embedding
    • 我找到了这个答案,stackoverflow.com/a/21113784/2738980,但评论指出它违反了 API 规则。据我所知,我不使用 API,是否禁止我应用该解决方案?
    • AFAIK ToS 在这种情况下仍然适用。从我在该答案中看到的情况来看,控件只是被移出视口,因此这也意味着您的视频的一部分也将被隐藏。
    • 啊,我明白了。感谢所有的帮助。我会接受答案,因为它回答了我最初的问题。个人感谢在第一个答案后留下来帮助其他人......有时似乎人们只是想要赞成和接受而不是在这里帮助人们
    【解决方案2】:

    最好的方法是使用 oEmbed API:https://developer.vimeo.com/apis/oembed

    对于您在问题中提供的链接,您可以请求:

    https://vimeo.com/api/oembed.json?url=https%3A//vimeo.com/22439234

    这将为您返回一个 JSON 对象,该对象具有带有嵌入代码的 html 键。

    【讨论】:

      猜你喜欢
      • 2013-11-10
      • 2012-09-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-12-22
      • 2014-01-21
      • 2014-08-13
      相关资源
      最近更新 更多