我尝试从youtube网址中提取视频ID,以便将提交的视频嵌入我的网站。
这样人们就可以提交普通网址而不是嵌入代码。
$(document).ready(function () {
$('.video-field').html(function(i,v){
var id = v.split('watch?v=')[1]; // get the id so you can add to iframe
var be = v.split('youtu.be/')[2];
return '<div class="fluid-width-video-wrapper" style="padding-top: 56.2%;"><iframe width="560" height="315" src="http://www.youtube.com/embed/' + id + '" frameborder="0" allowfullscreen></iframe></div>';
return '<div class="fluid-width-video-wrapper" style="padding-top: 56.2%;"><iframe width="560" height="315" src="http://www.youtube.com/embed/' + be + '" frameborder="0" allowfullscreen></iframe></div>';
});
});
Youtube网址有两种版本,请注意?v = + videoID和youtu.be/ + videoID。
两者都具有相同的ID,只是不同的链接,具体取决于您是从浏览器栏还是在YouTube上的共享标签中复制的。
第二个回归&#39; undefined&#39;在输出中为我。
答案 0 :(得分:1)
我相信这两个指数应该是[1]。取代&#39; be&#39; var with
var be = v.split('youtu.be/')[1];
你应该好。
也应该添加一个if来评估&#39; v&#39;论点,像这样:
$(document).ready(function () {
$('.video-field').html(function(i,v){
var id;
if(v.indexOf('watch?v=') > 0){
id = v.split('watch?v=')[1];
} else if(v.indexOf('youtu.be/') > 0) {
id = v.split('youtu.be/')[1];
}
return '<div class="fluid-width-video-wrapper" style="padding-top: 56.2%;"><iframe width="560" height="315" src="http://www.youtube.com/embed/' + id + '" frameborder="0" allowfullscreen></iframe></div>';
});
});
答案 1 :(得分:0)