2012-10-28 139 views
1
<a href="#" id="toggle01">CONTACT</a> 

<script> 
$('#toggle01').click(function() { 
    $('#contact').slideToggle("slow"); 
    return false; 
}); 
</script> 


<div id="contact"> 
123-456<br /> 
</div> 
<iframe id="player" src="http://www.youtube.com/embed/..."></iframe> 

一切工作在这里,但当我点击链接CONTACT和div#contact变得可见/不可见时,iframe闪烁并闪烁。
我该如何避免这种闪烁?如何避免闪烁iframe?

+0

您能告诉我们'slideToggle'插件吗,它有什么作用? – Bergi

+2

这可能是一个可能的答案。 http://stackoverflow.com/questions/7200425/iframe-with-pdf-black-flickeringblinking你想使用iframe虽然?你也可以使用带有'overflow:auto'的DIV @Bergi slideToggle是一个JQuery原生函数。 –

+0

@IgnacioBelhotColistro,同意你的答案。 –

回答

1

这个问题似乎是滑动动画。当你的div动画时,iframe向下移动并导致重新渲染。

您可以将您的div放在iframe之后或将其封装在另一个具有固定高度的div中。

例如:

<div style="height:50px;"> 
    <div id="contact"> 
     123-456<br /> 
    </div> 
</div> 

但是,这将使你的iframe上方的空白区域。

+0

我尝试了你所说的一切,没有结果。这是地址:'http:// www.mementocosmicum.site90.net /' – Alegro

+0

您的网站适合我。只有在IE中闪烁一点点,但这是浏览器的具体情况,不能用脚本修复,除了重新安排你的项目。 – bukart

+0

bukfixart,非常感谢。 – Alegro

1

你的脚本看起来是正确的,我没有看到它应该眨眼的任何理由。但是,你可以尝试下面的脚本?添加e.preventDefault();

<script> 
    $('#toggle01').click(function(e) { 
    e.preventDefault(); 
    $('#contact').slideToggle("slow"); 
    return false; 
    }); 
</script> 
+0

Abhishek,你的代码给我一个错误在线2 – Alegro

+0

对不起,我忘了把括号。纠正。 –

+0

阿布舍克,iframe再次闪烁 – Alegro