/ / Как да извлечете част от URL адрес и да попълните в img's src - jquery, regex, youtube-api

Как да извлечете част от URL адреса и да я попълнете в сървъра на img - jquery, regex, youtube-api

Исках да помогна за това. Трябва да се вземе връзката, която се изтегля от фураж и извличане на част от URL адреса и след това го попълва в 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>"

Така че това, което искам да направя тук, е да вземете URL адреса, генериран от тук + entry.link + и след това от генерираната връзка http://www.youtube.com/watch?v=acvh0CcSr8k&amp;feature=youtube_gdata просто вземете идентификатора на видеоклипа acvh0CcSr8k

и го избутайте в източника на img

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

Отговори:

1 за отговор № 1

Можете да използвате регулярен израз, за ​​да извлечете Id (не знам защо API не го предоставя ...)

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

Вашият идентификатор ще бъде в $1.


2 за отговор № 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];

След това продължете с останалите по-горе.