- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
好的,我已经安装了 FB 2.0.x,它真的很好。但是,我有一个使用 JW Player 的页面,上面有 4 个视频。目前,当您单击链接时,它会运行一个函数来打开 fancybox 实例。 fancybox 是一组 HTML 代码。 html 代码内部是一个带有 id 的 div(每个 div/视频都是唯一的)。然后,它添加 flashvars、params 和 attribute。其功能如下:
function show_modelpopup(id,title,filepath,base_url) {
var flashvars = { file: base_url+"uploads/videos/original/"+filepath, autostart:'true', skin: base_url+'js/skin.zip'};
var params = { allowfullscreen:'true', allowscriptaccess:'always', wmode: 'transparent' };
var attributes = { id: id+'player', name: id+'player' };
swfobject.embedSWF(base_url+'mediaplayer/player.swf','container'+id, 480, 385, '9.0.115', 'false', flashvars, params, attributes, flashloaded);
}
当 flashvars、params 和 attribute 完成设置后,它会运行 swfobject.embedSWF,最后一个选项是加载视频后运行的函数:
function flashloaded() {
jQuery('#shadowbox_archives').fancybox({
padding: 10,
type: 'html',
height: 520,
width: 600
});
jQuery.fancybox.open(jQuery('#shadowbox_archives'));
}
这一切都很棒。它会加载窗口,您会看到 Flash 播放器。但是,当您单击播放按钮时,它会显示“无法加载请求的内容。请稍后重试。”。我在 Firefox 上使用 firebug 来控制台日志内容,并且我验证了 flv 文件路径是否正确。事实上,我将主页设置为显示完全相同的视频,但不在 fancybox 内。 swfobject js 的输出如下:
Fancybox 弹出窗口:
<object id="45player" width="480" height="385" type="application/x-shockwave-flash" name="45player" data="http://www.green-scene.com/mediaplayer/player.swf">
<param name="allowfullscreen" value="true">
<param name="allowscriptaccess" value="always">
<param name="wmode" value="transparent">
<param name="flashvars" value="file=http://www.green-scene.com/uploads/videos/original/video_45_1318559535.flv&autostart=true&skin=http://www.green-scene.com/js/skin.zip">
</object>
主页(非 fancybox):
<object id="45player" width="480" height="385" type="application/x-shockwave-flash" name="45player" data="http://www.green-scene.com/mediaplayer/player.swf">
<param name="allowfullscreen" value="true">
<param name="allowscriptaccess" value="always">
<param name="wmode" value="transparent">
<param name="flashvars" value="file=http://www.green-scene.com/uploads/videos/original/video_45_1318559535.flv&autostart=true&skin=http://www.green-scene.com/js/skin.zip">
</object>
主页没有问题。但 fancybox 确实如此。那么我错过了什么?
感谢您的所有帮助!
更新刚刚做出的有趣发现。如果我单击播放器控制栏中的按钮展开到全屏,它将全屏显示,我可以单击播放来实际播放它。如果我单击按钮返回正常大小(或按 esc),它会继续在 fancybox 中播放。但是,如果我尝试单击“暂停”,它就会消失并给出相同的错误消息。
UPDATE #2 结果 Internet Explorer 喜欢上面的内容并且工作得很好。但 Firefox 和 Safari 给了我上面同样的错误。真是令人难以置信。
更新 #3 我能够在 Shadowbox 打开时让视频自动播放,但现在您无法在 Mac 上的 Firefox 或 Safari 中暂停或全屏播放。但 IE 8/9 仍然可以正常工作。
最佳答案
好的,我查看了您的页面,发现每个拇指都会触发一个 onclick 函数:
onclick="return show_modelpoup('//parameters')"
函数show_modelpoup()
,位于archives.js内部file 通过 jQuery html() 使用 id="shadowbox_archives"
构建 DIV 的内容
jQuery('#shadowbox_archives').html();
但是也将 Fancybox 绑定(bind)到同一个选择器
jQuery('#shadowbox_archives').fancybox();
...稍后,相同的函数使用 API 方法 $.fancybox.open()
触发 Fancybox(无 Shadowbox)...到目前为止一切顺利!?!?
这里发生的情况是,Fancybox 内部的实际内容是一个带有 id="shadowbox_archives"
的 DIV(也绑定(bind)到 Fancybox),因此每次您单击此类 DIV 内的任何部分时,无论是您的 swf 控件还是其他地方(甚至在空白空间上),它都会尝试再次触发 Fancybox(没有指示这次的内容应该是什么),因此出现错误“无法加载请求的内容。请重试”稍后。”
将 Fancybox 绑定(bind)到将在 Fancybox 中打开的相同内容(选择器)会产生循环效果,因此您需要重新制定 show_modelpoup()
函数来更改它,
...或者您可能只需要修改 flashloaded()
函数(在 show_modelpoup()
内部),使其在 flash 后直接触发 Fancybox内容已加载,例如:
function flashloaded() {
jQuery.fancybox({
href: '#shadowbox_archives',
padding: 10,
type: 'html',
height: 520,
width: 600
});
// jQuery.fancybox.open(jQuery('#shadowbox_archives'));
}
请注意,我注释掉了 API 方法 $.fancybox.open()
更新:
由于您使用内联内容,因此您的 flashloaded()
函数应如下所示:
function flashloaded() {
jQuery.fancybox({
href: '#shadowbox_archives',
autoSize: false,
padding: 10,
type: 'inline', // no html
height: 520,
width: 600
});
// jQuery.fancybox.open(jQuery('#shadowbox_archives'));
}
关于jquery - Fancybox swfobject "The requested content cannot be loaded. Please try again later.",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8372998/
我的应用程序中有一些漫长的过程,因此我创建了一个WAIT PLEASE表单,然后在另一个线程上调用,如下所示: public void ShowWait() { continu
public class Qn { static class Friend { private final String name; public Friend
我正在尝试在 Excel VBA 中创建请稍候消息。这是为了提醒处理 SQL 查询的用户该过程仍在进行中。我希望将此消息显示在用户表单中。 当前,用户连接到 SQL DB,选择数据库和一些其他选项,按
我正在尝试整理来自不同媒体的报道相同故事的新闻文章,我正在使用 news-please python 库。以下代码使用给定的 URL 为我提供新闻,但我想获取多篇新闻文章(基于特定日期或日期范围)。有
我有一个严重的问题:我已经下载了最新版本的 NLTK我得到了一个奇怪的 POS 输出: import nltk import re sample_text="start please with me"
提交此 JSP 时,应要求用户选择除“请选择”之外的其他内容。如果用户选择“请选择”并提交表单,它应该通过弹出窗口提醒用户应该更改该字段。 Please Select
我有一个包含 HTML 表单的页面,一旦用户单击返回的搜索结果列表中的链接,该表单就会提交回自身。一旦他们点击链接,页面就会获取提交的变量,在各种外部 API 上运行一堆搜索,解析一堆数据,并将一堆东
我有一个很长的任务,并且在执行过程中显示“请等待”消息。我使用 SwingWorker 来实现。但有时长任务并不长,所以我想延迟 1 秒显示消息,但我不知道该怎么做。 SwingWorker mySw
我有一个通过 .net Web 服务检查用户名可用性的 Activity ,我需要在调用期间显示“请稍候”消息,因为它可能需要一两秒钟 - 我已经尝试过 AsyncTask 和 Threading,但
我有以下 3 个表: storage ( id, client, cost, -- which have no values col_1, -- which have no values col_2,
我想添加“请选择...”作为组合框中的第一个选项。请参阅下面的代码 - 有什么建议吗? 问候,彼得 "; $sql[0] = 'Please select...'; while ($row = mys
我的表单将运行一些可能需要一段时间才能执行的代码。我想在后台运行操作时显示“请稍候”消息。 我想将该消息保存在一种形式中,我可以从其他形式控制它的可见性以及它的文本。 我还希望将其设置为在 Progr
我想模拟friendlyARM的板子,Mini2440或者mini6410,这样我就可以练习嵌入式编程,QT编程等等,由于一些经济困难和奇怪的进口政策,我的国家。 无论如何,问题是我似乎无法理解进行仿
我有以下 jQuery 函数,它会在用户水平滚动超过 500 像素时触发 aTestEvent(): jQuery(document).scroll(function(){ if(jQuery
我有应用服务器,我使用 Chef + 一些临时 bash 脚本一起引导它们。问题是,当我想在这些应用程序服务器之一上运行更新时,我得到: 19:00:28: *** Please tell me wh
我有这个bootstrap-table数据表,加载完所有数据后,消息继续显示。任何人都知道为什么会这样?提前谢谢你。 Id
我需要在应用程序启动,动画启动以及应用程序更改可见性的生命周期中创建一个“请稍候”窗口。我不想创建明确的新线程(可能是ThreadPool或BackgroundWorker)。 有任何想法吗? 最佳答
我正在使用3rd party库,该库的某些功能需要很长时间才能执行,因此我想在功能繁忙时显示“请稍候”对话框。 通常我会做这样的事情: Thread longTask = new Thread (ne
我想让我的选择器在启动时显示“默认选项”。这意味着:类似“请选择一个选项”。 我尝试使用此短语手动添加选项,但是,这样在选择其他选项后可以重新选择“默认选项”,就像它是真正的选项之一一样。有什么办法可
我一直在努力制作一个模态表单来通知用户等待作业结束。这是我正在尝试做的一个简单示例: unit Unit1; interface uses Winapi.Windows, Winapi.Messa
我是一名优秀的程序员,十分优秀!