2011-05-20 57 views
1

我遇到很多Vimeo和IE的问题。我有一个像youtube一样的自定义视频“播放器”功能 - 一次显示一个视频,并有切换视频的选项。JQuery IE删除/追加问题

第一次尝试:保持每个视频在一个div和显示/ jQuery的淡入/淡出隐藏起来。在IE/FF/Chrome中除IE外,在视频之间切换可保持旧视频的音频播放以及新的视频。不能接受的。

第二次尝试:将每个视频保存在一个div中,并根据需要删除/追加每个视频。但是,在IE中,视频不会第二次加载。在FF/Chrome中正常工作。

我觉得我已经尝试了一切,我在智慧的结尾。 JSFiddle:http://jsfiddle.net/4egZD/1/(播放来自Vimeo的视频;我的第二次尝试删除/追加)

任何帮助或替代品,非常感谢。

这里的非JSFiddle'rs

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js"></script> 
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js"></script> 

<script type="text/javascript"> 
$(document).ready(function() { 

    // When any of our video description divs are clicked, play that video 
    // for testing purposes, we only show one video 
    // whenever a new video is clicked, we want to remove/append to stop the audio in IE 
    $('#descript-1').click(function() { 
     $("#video1").remove().appendTo('#videoHolder'); 
    }); 


}); 
</script> 



<table border="1"> 
<tr> 
<td style="background-color: #003388; color: white; font-weight: bold; padding: 2px; padding-left: 7px;" colspan="2"> 
<a name="videos">Watch Our Videos</a> 
</td> 
</tr> 
<tr> 
<td id="videoHolder" valign="top"> 

<div id="video1" ><object width="400" height="225"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=23864606&amp;server=vimeo.com&amp;show_title=0&amp;show_byline=0&amp;show_portrait=0&amp;color=&amp;fullscreen=1&amp;autoplay=1&amp;loop=0" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=23864606&amp;server=vimeo.com&amp;show_title=0&amp;show_byline=0&amp;show_portrait=0&amp;color=&amp;fullscreen=1&amp;autoplay=1&amp;loop=0" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="225"></embed></object> 
</div> 

</td> 
<td style="margin-right: 5px; vertical-align:top;"> 
<div id="descript-1" style="width: 100%; margin: 5px; background-color: #999999; cursor: pointer;"> 
    <b>Play This Video</b><br />But why won't it play more than once in IE? 
</div> 

</td> 
</tr> 
</table> 

回答

1

的代码,你可以尝试这样的事情:

$('#descript-1').click(function() { 
    var video = $("#video1"); 
    $("#video1").remove() 
    video.appendTo('#videoHolder'); 
}); 

$('#descript-1').click(function() { 
    var video = $("#video1").html(); 
    $("#video1").remove() 
    $('#videoHolder').html("<div id='video1'>" + video + "</div>"); 
}); 

我不知道它是否会工作与否,没有任何意义,但作为一切在IE中没有意义,你可以给它一个镜头。

什么是有问题的IE版本?

+0

IE 7,8,9 - 重建videoHolder的html诀窍,谢谢哥们 – 2011-05-23 16:34:06