我写了一个AngularJS指令,用于使用其froogaloop库的内置播放/暂停功能的vimeo视频.
它的作品很棒!唯一的问题是,当页面首次加载时,我会收到以下错误.
Failed to execute ‘postMessage’ on ‘DOMWindow’: The target origin provided (‘07000’) does not match the recipient
window’s origin
我在初始化指令中的froogaloop对象错了吗?
任何建议将不胜感激.
你可以在这里查看这个邮箱:http://plnkr.co/edit/GKWNk3LhX0MR3lhpfqyA
我建议在< iframe>中的onLoad事件中执行代码.然后确保iframe准备好接收消息时代码将执行.
有很多方法可以做到:
>如果您已经在项目中使用jQuery,则可以使用jQuery:$(‘iframe’).load(callback)或
写一个EventListener:iframe_element.addEventListener(‘load’,callback)或
>使用plain onload回调:iframe_element.onload = callback.
回调是使用Froogaloop的方法.
但是你必须知道这些解决方案中的一些可能在一些旧/ MS浏览器浏览器上有一些缺点.