我有一个jw播放器,点击链接可以更改视频。我还有其他类型的播放器,因此我需要隐藏jw播放器并切换到youtube播放器。问题是,在视频播放器可见后,第二次单击时jw播放器会加载视频。任何解决方案,以便播放器在第一次单击时加载视频。
<div id="jw_container">
<script type="text/javascript" src="https://content.jwplatform.com/players/hsdfQtN-ieOuTCiv.js"></script>
</div>
<li><a href="javascript:playTrailer('Bmodfg5AS')" id="vid_link3">video</a></li>
function playTrailer(key) {
$('#jw_container').show(); // show video player
jwplayer().load("https://content.bitsontherun.com/jw6/" + key + ".xml");
jwplayer().play({
autostart: false
});
}
如您所见,首先单击以使视频可见,然后再加载特定视频。有一个解决方案,而不是使用show();使用.css('visibility','visible'),但这会导致某些CSS问题。
实际代码:
var loaded = false;
function playTrailer(key) {
$('#yt_container').hide(); // hide youtube
$('#jw_container').show("slow", function() {
jwplayer().load("https://content.bitsontherun.com/jw6/" + key + ".xml");
});
loaded = true;
}
jwplayer().onPlaylistItem(function() {
if(loaded) {
jwplayer().play({autostart:false});
}
})
最佳答案
我认为您需要设定
编辑
$('#jw_container').show(0,'', function() {
// Animation complete.
jwplayer().load("https://content.bitsontherun.com/jw6/" + key + ".xml");
jwplayer().play(true);
});
假设可能是未加载播放列表,因此play方法什么都不执行。因此,这也可能起作用:
function playTrailer(key) {
$('#jw_container').show(); // show video player
jwplayer().load("https://content.bitsontherun.com/jw6/" + key + ".xml");
jwplayer().onPlaylist( function(event){
jwplayer().play(true);
});
}
关于javascript - jQuery首先单击show(),然后加载视频,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21761625/