我正试图从一些youtube嵌入式视频中获取一个链接,以便与它们建立一些链接,这些链接会触发一个漂亮的花式框来观看视频。
从嵌入的视频中获取ID,并在右侧链接中替换它不是问题。一旦我尝试在循环中编码就会变脏。
我使用的javascript如下:
$('.portfolio_det iframe').each(function(i) {
var videolink = this.src.replace('http://www.youtube.com/embed/', '');
var videolink = videolink.replace('?fs=1&feature=oembed', '')
$('.portfolio_thumb .youtubeLink').each(function(i) {
$(this).attr('href', "http://www.youtube.com/watch?v=" + videolink);
});
});
代码的最后一段检索链接 虽然他们都在第一个YouTube视频上创建了href。
如何将变量设置在循环中?
为了让它更清晰一点,这里有一个来自设置的jsfiddle:
答案 0 :(得分:0)
您正在定义var videolink两次并离开;在第二个结束时。 第二行应该是:
videolink = videolink.replace('?fs=1&feature=oembed', '');
答案 1 :(得分:0)
在循环外定义变量。如果你定义了一个变量,你也不必将var
放在它前面。
var videolink;
$('.portfolio_det iframe').each(function(i) {
videolink = this.src.replace('http://www.youtube.com/embed/', '');
videolink = videolink.replace('?fs=1&feature=oembed', '')
$('.portfolio_thumb .youtubeLink').each(function(i) {
$(this).attr('href', "http://www.youtube.com/watch?v=" + videolink);
});
});