Jquery 将youtube链接转换为jwplayer嵌入代码
我有一个聊天室,当有人发送youtube链接时,我想立即将其转换为可播放的视频 因此,当用户以以下格式发送链接时Jquery 将youtube链接转换为jwplayer嵌入代码,jquery,youtube,Jquery,Youtube,我有一个聊天室,当有人发送youtube链接时,我想立即将其转换为可播放的视频 因此,当用户以以下格式发送链接时 http://www.youtube.com/watch?v=kLORyXO8mVc http://www.youtube.com/watch?v=kLORyXO8mVc&feature=related 它会将链接转换为此代码 <div id='mediaspace'>Youtube</div> <script type='text/javascript
http://www.youtube.com/watch?v=kLORyXO8mVc
http://www.youtube.com/watch?v=kLORyXO8mVc&feature=related
它会将链接转换为此代码
<div id='mediaspace'>Youtube</div>
<script type='text/javascript'>
jwplayer('mediaspace').setup({
'flashplayer': 'player.swf',
'file': 'XXXXXX-YOUTUBE-VIDEO-URL-GOES-HERE-XXXXXX',
'controlbar': 'bottom',
'width': '350',
'height': '230'
});
</script>
您的代码在正则表达式中没有转义(您不能使用/inside/而不转义)或替换字符串(您不能使用'inside'而不转义)。试试这个:
var regEx = /http:\/\/(www\.)?youtube\.com\/watch\?.*v=([a-zA-Z0-9]+)/;
$("body").filter(function() {
return $(this).html().match(regEx);
}).each(function() {
$(this).html($(this).html().replace(regEx, "<div id='mediaspace'>Youtube</div><script type='text/javascript'>jwplayer('mediaspace').setup({'flashplayer': 'player.swf','file': '$1','controlbar': 'bottom','width': '350','height': '230'});</scr"+"ipt>"));
});
var regEx=/http:\/\/(www\)?youtube\.com\/watch\?*v=([a-zA-Z0-9]+)/;
$(“body”).filter(函数(){
返回$(this.html().match(regEx);
}).each(函数({
$(this.html($(this.html().replace(regEx,“Youtubejwplayer('mediaspace')).setup({'flashplayer':'player.swf','file':'1','controlbar':'bottom','width':'350','height':'230');));
});
您的代码在正则表达式中没有转义(您不能使用/inside/而不转义)或替换字符串(您不能使用'inside'而不转义)。试试这个:
var regEx = /http:\/\/(www\.)?youtube\.com\/watch\?.*v=([a-zA-Z0-9]+)/;
$("body").filter(function() {
return $(this).html().match(regEx);
}).each(function() {
$(this).html($(this).html().replace(regEx, "<div id='mediaspace'>Youtube</div><script type='text/javascript'>jwplayer('mediaspace').setup({'flashplayer': 'player.swf','file': '$1','controlbar': 'bottom','width': '350','height': '230'});</scr"+"ipt>"));
});
var regEx=/http:\/\/(www\)?youtube\.com\/watch\?*v=([a-zA-Z0-9]+)/;
$(“body”).filter(函数(){
返回$(this.html().match(regEx);
}).each(函数({
$(this.html($(this.html().replace(regEx,“Youtubejwplayer('mediaspace')).setup({'flashplayer':'player.swf','file':'1','controlbar':'bottom','width':'350','height':'230');));
});
您真正需要帮助的是什么?是否希望帮助删除URL变量中除v
之外的所有内容?@Ancide将链接包装在嵌入代码中。我添加了我拥有的代码,但它不起作用。您真正需要帮助的是什么?是否希望帮助删除URL变量中除v
之外的所有内容?@Ancide将链接包装在嵌入代码中。我添加了我拥有的代码,但它不起作用