2010-04-08 67 views
1

我有一个div和三个链接,当一个链接被点击的div设置其innerHTML与embedHTML的视频,我需要引起一些影响,当当前div视频是上点击链接改变淡入淡出包含视频embedHTML在jquery

实施例:

<a id="Link1" onClick="ChangeVideo(1)">Link1</a> 
<a id="Link2" onClick="ChangeVideo(2)">Link2</a> 
<a id="Link3" onClick="ChangeVideo(3)">Link3</a> 
<div id="CurrVideo"></div> 
<script type="text/javascript" language="javascript"> 
//The ArrEmbed is an array that is set on the load of the page:: 
var ArrEmbed = new Array(); 
function ChangeVideo(index) 
{ 
    $('#CurrVideo).fadeTo(1000,0.25,function(){ 
    document.getElementById("CurrVideo").innerHTML = ArrEmbed[index-1]; 
    });  
    $('#CurrVideo).fadeTo(500,1.25); 
} 
</script> 

的效果并不显着,并用不透明消消衰落如果持续时间增加时没有注意到(例如“慢”),当我更换EmbedHTML与图像此代码是适用的和衰落的影响是注意到,但与视频它不明显,所以我如何解决这个问题?

预先感谢任何尝试

注: 的embedHTML有所不同,因为它可能来自YouTube或任何服务器或从我JWPlayer。

+0

您是否使用JavaScript框架?我对这个语法的语法并不熟悉,但是有些事件会让你的代码更容易一些!另外,你是否尝试过使用一堆浏览器,这一点很重要。 – 2010-04-14 22:16:05

+0

我已经试过了,现在的问题是在flsh播放器没有感觉到效果,所以我已经通过另一种方式解决了它,但仍然需要知道如何解决flsh播放器动画的问题 – Ahmy 2010-04-18 09:18:38

回答

0

我已经搜索并找到了解决这个问题的解决方案,因为我想用adobe .pdf对象做类似的事情,但总之,我发现没有办法使这项工作。

见我SO张贴在这个问题上:

Alternate method of inserting a .PDF file into HTML page

我知道那不是你想要听到的答案,我也同样感到失望。存在的主要问题是因为adobe对象实际上将自己呈现在HTML的“顶部”,就好像它们只是不以任何方式连接到HTML的浮动元素一样,因此您无法操作它们。

为了解决你的问题,你可以看看每个视频包含单独的<div>标签,并在该div上执行你的jQuery功能,而不是视频对象本身。您可能会失去淡入,淡出效果,但至少您可以在需要时.css({display:'block'}).css({display:'none'})显示/隐藏视频。