2010-10-22 97 views
2

我想獲得一些幫助。我需要從Feed中取出鏈接並提取一部分url,然後將其填充到img標記src中。如何提取網址的一部分並填充到img的src中

html += '<'+ options.titletag +' class="rssRow '+row+'"><a href="'+ entry.link +'" title="View this feed at '+ feeds.title +'">'+ entry.title +'</a></'+ options.titletag +'>' 
     if (options.date) html += '<div>'+ pubDate +'</div>' 

所以我在尋找什麼做的,是從這裏抓取+ entry.link +,然後從生成的鏈接http://www.youtube.com/watch?v=acvh0CcSr8k&amp;feature=youtube_gdata只是抓住視頻ID acvh0CcSr8k

和推送到IMG的生成的URL源

<img src="http://img.youtube.com/vi/**""**/2.jpg" border="0" /> 

回答

1

您可以使用正則表達式來獲取該ID(我不知道爲什麼API沒有提供它雖然...)

/^http:\/\/(?:www\.)?youtube\.com\/watch\?v=(.*?)&/ 

您的ID將在$1

+0

是的API應該有縮略圖選項...所以我怎麼能存儲,以便我可以在img src – TikaL13 2010-10-22 02:12:49

+1

@Matthew中調用該var你可以像'$('',{ src:'http://img.youtube.com/vi/'+ id +'/2.jpg',alt:'YouTube'})' – alex 2010-10-22 02:15:13

2

不知道你是如何引用鏈接,但一旦你擁有了它,你可以嘗試這樣的:

// or whatever selector 
var link = $('a')[0]; 

var str = link.search.split('=')[1].split('&')[0]; 

    // create the image 
var $img = $('<img>',{src: "http://img.youtube.com/vi/" + str + "/2.jpg"}); 

或代替使用.split(),你可以.slice()字符串,使用.indexOf()

var str = link.search; 
str = str.slice(str.indexOf('=') + 1, str.indexOf('&')); 

,或者如果你的意思是該鏈接已經是一個字符串,那麼你可以通過在?分裂開始。

var str = entry.link.split('?')[1]; 

然後繼續上面的內容。

+0

我*認爲*這些'**'被他用來製作它粗體,它們不應該是實際字符串的一部分。 – alex 2010-10-22 02:06:43

+0

@alex - 是的,很可能。刪除。 :O) – user113716 2010-10-22 02:08:37