当用户将 iframe 代码粘贴到文本区域框中时,我试图获取 Vimeo 或 Youtube iframe 的视频缩略图。第一步是从 iframe src 属性获取视频 ID 号。
我知道如何在粘贴时获取 textarea.val() 但结果是一个字符串,我想访问 iframes src 属性示例 http://player.vimeo.com/video/video_ID然后使用
var n = srcFrame.lastIndexOf('/');
var result = srcFrame.substring(n + 1);
获取video_ID
有没有办法在 .val() 返回的值上使用 .attr 或类似的方法(也许我必须将字符串转换为对象?)或者我被迫进行一些杂技字符串操作?
用户输入示例为:
<iframe src="http://player.vimeo.com/video/THIS_NEEDED" width="500" height="300" frameborder="0" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe> <p><a href="http://vimeo.com/65616948">Demo 01 2013</a> from <a href="http://vimeo.com/kr">KR</a> on <a href="http://vimeo.com">Vimeo</a>.</p>
最佳答案
你可以使用 prop('src')
来获取 src,如果你确定它不是以 /
结尾,你可以在 /
并弹出最后一个值:
var ID = $('iframe').prop('src').split('/').pop();
编辑:
要从 HTML 字符串中获取 iframe 的 src,您可以将其解析为 HTML,将其附加到一个空元素,然后从那里开始:
var holder = $('<div />').append($('textarea').val());
var ID = $('iframe', holder).prop('src').split('/').pop();
alert(ID);
关于javascript - Jquery - 可以在 html 输入文本上使用 .attr 或类似的而不是正则表达式吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17371213/