videojs,手动触发不同的youtube url
videojs, trigger different youtube urls, manually
我有兴趣手动(点击一个按钮)触发不同的 YouTube 网址的播放,使用相同的 html 视频标签(如果可能的话)和 videojs。
我看到这段代码让我希望这是可行的:http://jsfiddle.net/mister_ben/g7mrs/
html代码:
<video id="myPlayer" src="" class="video-js vjs-default-skin" controls preload="auto" width="320" height="180" data-setup='{ "techOrder": ["youtube"], "src": "http://www.youtube.com/watch?v=D36JUfE1oYk" }'></video>
<p><a href="#" onClick="loadVideo()">Another video</a></p>
js代码:
function loadVideo(event) {
videojs("myPlayer").src({ type: "video/youtube", src: "http://www.youtube.com/watch?v=dQw4w9WgXcQ"});
event.preventDefault();
}
但这是旧代码(videojs 版本 4.1 和 videojs-youtube 插件的旧版本),升级到当前版本并不能解决问题。
我正在为 videojs 使用 youtube 插件 (https://github.com/eXon/videojs-youtube)。
现在使用新的 API 甚至可以做到这一点吗?
我问了作者,他在这里举了一个例子:
https://github.com/eXon/videojs-youtube/issues/339#issuecomment-164592838
这是一个工作示例:
<!DOCTYPE html>
<html>
<head>
<link type="text/css" rel="stylesheet" href="http://vjs.zencdn.net/5.4.4/video-js.css"/>
</head>
<body>
<video
id="vid1"
class="video-js vjs-default-skin"
controls
width="640" height="264"
data-setup='{ "techOrder": ["youtube"], "sources": [{ "type": "video/youtube", "src": "https://www.youtube.com/watch?v=xjS6SftYQaQ"}] }'
>
</video>
<button id="change">change video</button>
<script src="https://code.jquery.com/jquery-2.1.4.min.js"></script>
<script src="http://vjs.zencdn.net/5.4.4/video.js"></script>
<script
src="https://raw.githubusercontent.com/eXon/videojs-youtube/637a2916c2c4fd2b5fc55dafa3df923a92fec6d0/src/Youtube.js"></script>
<script>
(function ($) {
$(document).ready(function () {
// An example of playing with the Video.js javascript API
// Will start the video and then switch the source 3 seconds latter
// You can look at the doc there: http://docs.videojs.com/docs/guides/api.html
videojs('vid1').ready(function () {
var myPlayer = this;
myPlayer.src({type: 'video/youtube', src: 'https://www.youtube.com/watch?v=y6Sxv-sUYtM'});
$("#change").on('click', function () {
myPlayer.src({type: 'video/youtube', src: 'https://www.youtube.com/watch?v=09R8_2nJtjg'});
});
});
});
})(jQuery);
</script>
</body>
</html>
使用 Videojs 播放器在 ionic 中播放不同的 youtube url。
下面是它的工作示例:
page.html
<video id='video' width="100%" controls preload="auto" class="video-js vjs-default-skin vjs-big-play-centered vjs-16-9"></video>
page.ts
this.videoJSplayer = videojs(document.getElementById('video'), {
controls: true,
autoplay: true,
techOrder: ["youtube"],
height: "200"
});
this.videoJSplayer.src({type:'video/youtube',src:"https://www.youtube.com/watch?v=Xwo-H5krlj0"})
我有兴趣手动(点击一个按钮)触发不同的 YouTube 网址的播放,使用相同的 html 视频标签(如果可能的话)和 videojs。
我看到这段代码让我希望这是可行的:http://jsfiddle.net/mister_ben/g7mrs/
html代码:
<video id="myPlayer" src="" class="video-js vjs-default-skin" controls preload="auto" width="320" height="180" data-setup='{ "techOrder": ["youtube"], "src": "http://www.youtube.com/watch?v=D36JUfE1oYk" }'></video>
<p><a href="#" onClick="loadVideo()">Another video</a></p>
js代码:
function loadVideo(event) {
videojs("myPlayer").src({ type: "video/youtube", src: "http://www.youtube.com/watch?v=dQw4w9WgXcQ"});
event.preventDefault();
}
但这是旧代码(videojs 版本 4.1 和 videojs-youtube 插件的旧版本),升级到当前版本并不能解决问题。
我正在为 videojs 使用 youtube 插件 (https://github.com/eXon/videojs-youtube)。
现在使用新的 API 甚至可以做到这一点吗?
我问了作者,他在这里举了一个例子: https://github.com/eXon/videojs-youtube/issues/339#issuecomment-164592838
这是一个工作示例:
<!DOCTYPE html>
<html>
<head>
<link type="text/css" rel="stylesheet" href="http://vjs.zencdn.net/5.4.4/video-js.css"/>
</head>
<body>
<video
id="vid1"
class="video-js vjs-default-skin"
controls
width="640" height="264"
data-setup='{ "techOrder": ["youtube"], "sources": [{ "type": "video/youtube", "src": "https://www.youtube.com/watch?v=xjS6SftYQaQ"}] }'
>
</video>
<button id="change">change video</button>
<script src="https://code.jquery.com/jquery-2.1.4.min.js"></script>
<script src="http://vjs.zencdn.net/5.4.4/video.js"></script>
<script
src="https://raw.githubusercontent.com/eXon/videojs-youtube/637a2916c2c4fd2b5fc55dafa3df923a92fec6d0/src/Youtube.js"></script>
<script>
(function ($) {
$(document).ready(function () {
// An example of playing with the Video.js javascript API
// Will start the video and then switch the source 3 seconds latter
// You can look at the doc there: http://docs.videojs.com/docs/guides/api.html
videojs('vid1').ready(function () {
var myPlayer = this;
myPlayer.src({type: 'video/youtube', src: 'https://www.youtube.com/watch?v=y6Sxv-sUYtM'});
$("#change").on('click', function () {
myPlayer.src({type: 'video/youtube', src: 'https://www.youtube.com/watch?v=09R8_2nJtjg'});
});
});
});
})(jQuery);
</script>
</body>
</html>
使用 Videojs 播放器在 ionic 中播放不同的 youtube url。
下面是它的工作示例:
page.html
<video id='video' width="100%" controls preload="auto" class="video-js vjs-default-skin vjs-big-play-centered vjs-16-9"></video>
page.ts
this.videoJSplayer = videojs(document.getElementById('video'), {
controls: true,
autoplay: true,
techOrder: ["youtube"],
height: "200"
});
this.videoJSplayer.src({type:'video/youtube',src:"https://www.youtube.com/watch?v=Xwo-H5krlj0"})