我正在寻找一个函数,它允许我将所有 Youtube 链接更改为带有 ID 的 Javascript 函数调用。
我将向您展示我的代码,但这是错误的...无法按我的意愿工作...:
function find_and_replace_youtube_links(message)
{
return message.replace(/(?:http:\/\/)?(?:www\.)?(?:youtube\.com|youtu\.be)\/(?:watch\?v=)?(.+)/g, 'play_youtube(\'$1\')');
}
function play_youtube(youtube_id)
{
$('#youtube_embed').html('something youtubeid something');
}
呼唤
alert(find_and_replace_youtube_links('test \n\
http://www.youtube.com/watch?v=JGCsyshUU&feature=autoplay&list=sSPDBAE171ADC2D71FA&playnext=1\n\
\n\
testt http://www.youtube.com/watch?v=JGCsyshUU&feature=autoplay&list=sSPDBAE171ADC2D71FA&playnext=1 testt\n\
\n\
testtt'));
并输出
test
play_youtube('JGCsyshUU&feature=autoplay&list=sSPDBAE171ADC2D71FA&playnext=1')
testt play_youtube('JGCsyshUU&feature=autoplay&list=sSPDBAE171ADC2D71FA&playnext=1 testt')
testtt
嗯……
问题在这里:
play_youtube('JGCsyshUU&feature=autoplay&list=sSPDBAE171ADC2D71FA&playnext=1')
您可以看到,它解析所有链接,而不仅仅是 id 它应该给我
play_youtube('JGCsyshUU');
代替
play_youtube('JGCsyshUU&feature=autoplay&list=sSPDBAE171ADC2D71FA&playnext=1')
with 是错误的
:-(
有人在做类似的事情并具有工作功能吗?我可以适应我的要求,但需要与我的要求有共同点。