我在页面上有一个下拉/多级CSS菜单.然而,菜单没有显示在我的闪存图表上.明显的修复似乎是把wmode:透明(或不透明),但这对我不起作用.我也尝试将CSS中的z级设置为非常高的值(2000),但这也不起作用.
另外,我使用open-flash-chart-v2来生成图表.(虽然我认为这不重要,但它限制了我传递变量的能力,因为我没有直接使用embed或object标签).
<script type="text/javascript">
swfobject.embedSWF("/ofc-library/open-flash-chart.swf", "chart", "100%", "100%", "9.0.0", "expressInstall.swf", {"wmode" : "transparent"});
</script>
Run Code Online (Sandbox Code Playgroud)
页面显示问题(这当前不显示z-index尝试修复.)
想知道是否可以在不使用SWFobject或任何其他额外的javascript文件的情况下从javascript到flash进行通信.
目前我正在使用以下指南:http: //www.viget.com/inspire/bi-directional-actionscript-javascript-communication
感谢您的时间.
我有两个彩盒弹出框,每个弹出框都显示一个youtube视频.当他们完成播放时,我试图让它们自动关闭彩盒窗口.下面的代码在firefox中运行完美,但在IE中我无法使用addEventListener.我试过attachEvent没有成功.任何人都可以提出如何解决这个问题的建议吗?看起来很简单,但我已经筋疲力尽,试图找到解决方案.顺便说一句,这是我第一次在stackoverflow,这是非常令人印象深刻.
更新1:
嗯,这是我目前的代码.它在FF中运行完美,但IE只能输出良好.IE8调试器也不报告任何错误......
function onYouTubePlayerReady(playerId) {
if (playerId && playerId != 'undefined') {
if(playerId && playerId == 'ytvideo1'){
var ytswf = document.getElementById('ytplayer1');
alert('good');
} else if(playerId && playerId == 'ytvideo2'){
var ytswf = document.getElementById('ytplayer2');
} else {
}
setInterval('', 1000);
ytswf.addEventListener('onStateChange', 'onytplayerStateChange');
alert('great');
}
}
function onytplayerStateChange(newState) {
alert('amazing');
if(newState == 0){
$.fn.colorbox.close();
alert('perfect');
}
}
Run Code Online (Sandbox Code Playgroud)
更新3:解决方案
只需在我的颜色框中放入完成并将swfobject放入其中,它在IE中完美运行.
我正在使用VideoJS和SWFObject来嵌入视频.我们的想法是VideoJS将尝试使用HTML5视频标记,如果不支持,它将在Flash上回退.我正在尝试使用SWFObject嵌入Flash作为后备.这是相关的代码:
<ul id="client_gallery">
<% if PortfolioMedia %>
<% control PortfolioMedia %>
<% if VideoFile %>
<li style="width:{$VideoWidth}px;height:{$VideoHeight}px">
<div class="video-js-box">
<video class="video-js" width="$VideoWidth" height="$VideoHeight" controls preload>
<source src="$VideoFile.URL" type="video/mp4" />
<div id="flash_player"></div>
<script type="text/javascript">
var flashvars = {
'file': "$VideoFile.URL"
};
var params = {
'allowfullscreen': "true",
"wmode": "transparent"
};
var attr = {
'id': 'f_player',
'name': 'f_player'
};
swfobject.embedSWF('/portfolio/javascript/jwplayer/player.swf', 'flash_player', '$VideoWidth', '$VideoHeight', '9', '', flashvars, params, attr, function(e){
});
</script>
</video>
</div>
</li>
<% end_if %> …Run Code Online (Sandbox Code Playgroud) 我试图从JavaScript调用flash回调方法.但它似乎不起作用.flash动作脚本示例代码如下[简化]:
import flash.events.ActivityEvent;
import flash.events.StatusEvent;
import flash.external.ExternalInterface;
var test_var = ExternalInterface.addCallback("js_method_to_call", flash_method);
function flash_method()
{
return "test";
}
Run Code Online (Sandbox Code Playgroud)
javascript示例代码写在[简化]下面:
function callFlashMethod(){
var flashFile = eval("window.document.test");
flashFile.js_method_to_call;
}
function loadTest(){
swfobject.embedSWF("test.swf", "test", "1", "1", "10.0.0", false);
}
$(document).ready(function(){
loadTest();
callFlashMethod();
});
Run Code Online (Sandbox Code Playgroud)
它总是在火灾控制台"flashFile.js_method_to_call不是函数"中显示错误.
我有一个无铬 YouTube 播放器,我正在尝试将视频加载到其中,但只有部分视频可以工作,而不是全部。如果我没记错的话,那些未加载的内容是由于版权侵权(例如,卡通片的某些剧集无法加载,但一个孩子做后空翻的家庭电影可以加载)。我想做的是找出这些视频是否可以加载,无论是在我们尝试加载它们之后还是之前。
例如,这里有 Nataly Dawn 的两个视频。一个加载,另一个不加载。
// loads and plays the video
ytplayer.loadVideoById("GhDGdT33K0k");
// doesn't load/play the video
ytplayer.loadVideoById("-KYUPJIzCyM");
Run Code Online (Sandbox Code Playgroud)
通过查看工作视频和非工作视频的数据,我似乎看不到任何表明后者不可嵌入的信息。[我正在寻找<yt:accessControl>标签或缺失yt:format='5'(参见如何使用 Youtube API 来检查视频是否可嵌入?),但无济于事。]
根据我在控制台中的尝试,无论视频是否实际加载,loadVideoById 总是返回。undefined我似乎找不到 API 方法来确定视频是否已这样做。
我有以下div,我正在尝试在my_flash前面制作iframe层.这是一个常见的问题,我已经阅读了所有可以找到的解决方案,但我仍然在IE8中遇到问题.顺便说一句,我正在使用SWFobject.
这是来源:
<script type="text/javascript">
swfobject.embedSWF("index.swf", "my_flash", "100%", "100%", "8.0.0");
swffit.fit("my_flash",900,650);
</script>
<div id="my_flash" style="z-index:1;"></div>
<div style="border:none; overflow:hidden; width:50px; height:21px; z-index:9999; position: absolute; bottom: 5px; left: 110px;" >
<iframe src="http://www.facebook.com/plugins/like.php?blah.html" scrolling="no" frameborder="0" allowTransparency="true" style="z-index:9998"/>
</div>
Run Code Online (Sandbox Code Playgroud) 我正在使用YUI的Dialog控件在弹出窗口中显示我网站上的Flash电影.
我正在使用SWFObject创建Flash控件.这会为我的视频创建一个JW Player实例.
我很惊讶地看到在SWF对象常见问题中没有简单的方法来破坏电影.当YUI面板自行销毁时,会留下孤立的视频播放.
使用SWFObject创建的SWF控件的最佳破坏方法是什么,或者没有好办法,我应该隐藏它并调用'stop()'?
我有一个带有自定义HTML控件的youtube播放器,并且想要添加一个按钮来打开/关闭隐藏式字幕并切换语言.任何人都有使用JS或iframe API的经验吗?我知道将cc_load_policy = 1附加到网址会强制显示字幕,但我使用自定义控件并想添加切换按钮.我尝试使用loadVideoByUrl方法并附加cc参数,但这不起作用似乎不起作用.
我也只能让播放器用iframe方法显示用户默认语言的字幕,而不是swf对象方法.Swf对象始终默认为英语.如果有人对此有任何见解,请告诉我!
以下代码使用SWFObject将Flash动画嵌入到HTML文档中仅显示替代内容.为什么?
<!DOCTYPE html>
<html>
<head>
<title>Adding a Flash Movie</title>
<script type="text/javascript"
src="http://ajax.googleapis.com/ajax/libs/swfobject/2.2/swfobject.js">
</script>
<script type="text/javascript">
swfobject.embedSWF("flash/bird.swf", "bird", "400", "300", "8.0.0");
</script>
</head>
<body>
<div id="bird">
<p>An animation of a bird taking a shower</p>
</div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
Chrome,IE和Firefox都只显示An animation of a bird taking a shower.
swfobject ×10
flash ×5
javascript ×5
youtube-api ×3
jquery ×2
youtube ×2
css ×1
embed ×1
firefox ×1
flash-video ×1
html5 ×1
html5-video ×1
iframe ×1
video ×1
z-index ×1