【问题标题】:Inserting a Vimeo video in a Vaadin 7 BrowserFrame在 Vaadin 7 BrowserFrame 中插入 Vimeo 视频
【发布时间】:2021-05-11 21:54:41
【问题描述】:

我有这个 ID 为 123456 的 vaadin 视频。我需要使用 BrowserFrame 将其插入 Vaadin 7* 应用程序,我需要插入的视频来显示“全屏”按钮(并隐藏一些其他元素),但我我没有设法让它工作。

现在,我有这个:

    StringBuilder resourceBuilder = new StringBuilder("https://player.vimeo.com/video/");
    resourceBuilder.append(vimeoId);
    resourceBuilder.append("?byline=0&portrait=0");

    BrowserFrame eVimeo = new BrowserFrame("", new ExternalResource(resourceBuilder.toString()));
    eVimeo.setWidth("800px");
    eVimeo.setHeight("450px");

问题是,从 StringBuilder 生成的 URL,如果直接放在浏览器中,会显示“全屏”按钮,但当嵌入 BrowserFrame 时,则不会。

查找有关这方面的信息正在成为真正的 PITA,因为我们使用的是不受支持的 Vaadin 版本,并且我发现的大部分信息都是关于将 Vaadin 添加到 HTML 页面,而不是相反。

有什么想法吗?

* 是的,我们将来会更新。

【问题讨论】:

  • 你检查过这个stackoverflow.com/questions/35718776/… 吗?
  • 不,但它没有奏效。除非我缺少某种方式来修改(afaik)在 BrowserFrame 对象中添加 Vaadin 的 iframe,否则列出的参数不适用于外部资源(因为这是您对服务所做的请求,参数是在回复中)。

标签: java vaadin fullscreen vaadin7


【解决方案1】:

根据我评论的链接,你可能需要做这样的事情

BrowserFrame eVimeo = new BrowserFrame("Video", new ExternalResource(resourceBuilder.toString()));
eVimeo.setId("vimeoVid");
... add frame to layout ...
JavaScript.getCurrent().execute("document.getElementById('vimeoVid').childNodes[0].setAttribute('allowfullscreen','allowfullscreen')");

你可能还需要设置其他三个属性

这在 Vaadin 8 中也应该可以工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-01-15
    • 2021-08-07
    • 1970-01-01
    • 2020-07-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-04
    相关资源
    最近更新 更多