我在我的 Rails 3.2 应用程序的供应商资产目录中安装了 FancyBox(例如 jquery.fancybox.pack.js、jquery.fancybox.css 以及供应商资产文件夹中各自目录中的相关图像,没有额外内容)。
javascript 和 CSS 资产加载到资产管道的 application.js 和 application.css 文件中。而且,我已经测试并确认它们确实有效,因为单击时会正确弹出图像。
问题是无法加载 YouTube 视频模式。相反,它只显示每秒左右闪烁的加载 GIF。
这是 jQuery (CoffeeScript) 代码:
$(document).ready ->
$(".videopopup").fancybox
maxWidth: 800
maxHeight: 600
fitToView: false
width: '70%'
height: '70%'
autoSize: false
closeClick: false
openEffect: 'none'
closeEffect: 'none'
return
这是页面内的链接代码:
<%= link_to image_tag('thumbnail.png', alt: 'Thumbnail', class: "responsive"), 'http://www.youtube.com/embed/myvideocode?fs=1&autoplay=1', class: 'videopopup', title: 'My Video' %>
我在 localhost 上运行它,这可能是问题所在。在 Chrome 中,我查看了控制台,发现以下错误:
XMLHttpRequest 无法加载http://www.youtube.com/embed/myvideocode?fs=1&autoplay=1。Access-Control-Allow- Origin
http://localhost:3000
不允许来源
有谁知道这个错误是什么意思?我已经看到了一些关于这个错误的 SO 问题,但是没有关于如何在 Rails 中克服它的具体解决方案。或者,我错过了什么?