2012-04-08 76 views
2

我可能没有使用正确的术语,但希望我能正确地理解我的问题。我想知道的是,如果可以“延迟”特定div的“创建”,而不是延迟FadeTo或Show jquery命令。div的延迟“创造”,而不仅仅是div的显示

我问,因为我使用的Vimeo API完全令人难以置信和令人沮丧(至少对我来说 - 这是一个无尽的耻辱的来源,当尝试任何这样的Vimeo API编码时,我沉浸在自怜中)。我想要做的只是延迟嵌入的Vimeo视频的iframe代码的自动播放。问题是我的div中包含vimeo iframe在页面加载之前设置为隐藏好三秒钟,但由于它只是隐藏起来,所以在访问者真正看到它之前就开始播放视频。我只是用&自动播放= 1为VIMEO嵌入...

所以,我认为,除了得到这混乱的Vimeo API唯一的其他解决方案,尽量拖延视频这种方式是能够只使用一个jQuery命令延迟vimeo iframe,甚至可以在页面上加载/创建,直到容器div淡入。

如果这是可能的,我会保佑我的幸运符。如果有人在接下来的几个小时内回答,那就是双倍积分!非常感谢!!!

+0

哦,对于任何对Vimeo API感兴趣的人,以及我可能使用API​​来延迟视频(而不是我上面要求做的)的尝试,这里是我的问题的链接 - > http://vimeo.com/forums/topic:51648 否则爱Vimeo! – DillonB 2012-04-08 02:51:24

+0

太棒了!我急切地等待你的回复!任何援助100%赞赏。 – DillonB 2012-04-08 03:05:41

回答

1

我只是editted我的回答并应用到适合你的代码提供:


因此,我在这里做的是:
1)负载的jQuery到您的网页
2)当jQuery的看到你的分度, id =“div”为'ready',它会触发一个提示,说已加载(你可以删除它仅用于测试目的),然后延迟src从你的iframe加载2秒(2000毫秒)
3)所以你可以改变2000到任何你想要的时间,并确保“player_1”匹配你的iframes ID

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script> 

<script> 
$(document.getElementById('div')).ready(function() 
{ 
     alert('loaded'); 
    setTimeout('document.getElementById("player_1").src="http://www.youtube.com/v/82CYNj7noic?autoplay=1"', 2000); 

}); 

</script> 

<div id="div" class="div"> 
<iframe class="iframe" id="player_1" > </iframe> 
</div> 

这是否对你的工作?我希望我已经帮助了!

+0

嗯,它似乎并没有工作。我是否把这个放在部分?在容器页面的iframe代码中,我只是把src =“”还是离开了src?至于样式=包含div和vimeo iframe为什么有必要把这段代码放入我的css文件中?当我添加这段代码时,vimeo div没有显示出来,所以也许它必须在页面上的iframe代码后面显示。谢谢! – DillonB 2012-04-08 03:46:46

+0

我编辑了代码以匹配您在我的其他答案中提供的示例...只需确保document.getElementById(“player_1”)与iframe中的id =具有相同的名称(player_1)...也可以使确定你的vimeo网址有http://之前,,,当你之前输入的时候没有。我急切地等待着您的批准! – 2012-04-08 04:10:51

+0

我看到这段代码应该如何运行,但我有一些困难。我甚至试图创建一个jsfiddle teset,它不工作。 http://jsfiddle.net/p7x29/ 我觉得这很简单!一旦jsfiddle的作品,我可以正确实施,我想!谢谢! – DillonB 2012-04-08 05:51:18