我正在尝试使用fancybox-rails在一个带有rails的fancybox中播放视频。我按照site上的说明操作,可以很好地弹出一张图片。
下面是我的图片代码(可以正常工作):
= link_to image_tag('/assets/newlook/video_placehldr.jpg'), '/assets/newlook/nicepicture.jpg', :class => 'fancybox'如果我将nicepicture.jpg切换到nicevideo.mp4 (或nicevideo.webm或nicevideo.ogv),那么就会弹出一个带有旋转轮指示器的小fancybox,但随后它就会在那里冻结。
我可能遗漏了一些简单的东西,因为我又回到了rails的swing和所有花哨的javascript选项中。正因为如此,我认为这是我的application.js的相关部分:
$(document).ready(function() {
$("a.fancybox").fancybox();
});发布于 2012-11-26 07:51:01
首先,您还需要更改
link_to image_tag()..。添加到适当的标签,而不仅仅是视频的名称
其次,fancybox不是一个媒体播放器...您仍然需要一个播放器(例如jwplayer )才能在fancybox中打开这些视频,因此您(渲染的)视频链接应该看起来像这样
<a href="path/to/payer/jwplayer.swf?file='path/to/video.mp4'">open video in fancybox</a>此外,由于fancybox (您正在使用的版本v1.3.4)既不能获得内容的type,也不能获得视频的大小,所以最好在自定义脚本中设置一些,比如
$("a.fancybox").fancybox({
"width": 480, // or whatever
"height": 320,
"type": "swf"
});https://stackoverflow.com/questions/13555469
复制相似问题