在鼠标悬停事件上重新加载Firefox 7中的闪存

时间:2011-11-08 10:21:25

标签: html firefox browser onmouseover

我有以下结构:

<div class="feed-item" style="position:relative;" id="feed-611" onmouseover="showDelete()" onmouseout="hideDelete()">
<div class="feed-avatar">
    AVATAR
</div>
<div class="feed-content">
    CONTENTS
</div>
<div class="feed-attachment-video-holder" id="feed-attachment-video-holder611">
    <object type="application/x-shockwave-flash" id="player611" data="http://www.youtube.com/e/bRU1XRuC6DI?enablejsapi=1&amp;version=3&amp;playerapiid=611" width="570" height="350"><param name="allowScriptAccess" value="always"></object>
</div>

它适用于IE和Chrome,但在Firefox 3,6和7中,当鼠标进入饲料项时,youtube播放器重新加载,视频再次启动。悬停效果的css是这样的:

-webkit-box-shadow:0 0 1.0em hsla(0, 0%, 0%, 0.3);
-moz-box-shadow:0 0 1.0em hsla(0, 0%, 0%, 0.3);
box-shadow:0 0 1.0em hsla(0, 0%, 0%, 0.3);
position:relative;

这是一个已知问题吗?你有任何想法如何解决这个问题吗?

2 个答案:

答案 0 :(得分:1)

Firefox有各种错误导致Flash对象重新加载。例如,如果您在Flash影片的容器上动态更改 显示,位置或溢出 css属性的值,则Flash影片将重新加载(请参阅{{3 }})。 IFAIK,你无法自己解决这个问题,请等待Mozilla :(

返回到您的代码,当鼠标进入relative时,为什么需要将视频容器位置更改为feed-item?删除position:relative;可以解决您的问题。

答案 1 :(得分:0)

有没有办法可以使用:hover {} css meathod通过显示可见性来显示控件? 如果你想使用jQuery,你可以使用:

$(".control").hover(function(){
$("div-with-flash") .html(newContent); 
});

这接近你想要的吗?