使用jQuery过滤器在colorbox中打开vimeo url

时间:2012-07-18 12:37:02

标签: jquery regex embed vimeo

我想使用jQuery扫描一个html页面 - 在这种情况下由WordPress创建,以查找vimeo vidoes的所有链接 - 由用户通过WP编辑管理员添加。

然后我想将这些链接的控制权传递给colorbox。

jQuery选择器使用此链接:

http://vimeo.com/44799432

// vimeo in colorbox ##
jQuery("a").filter(function(){ // filter all as ##
    return jQuery(this).text().match(/vimeo\.com/igm); // match text with vimeo.com ##
    }).colorbox({iframe:true, innerWidth: "80%", innerHeight: "80%"}) // assign to colorbox ##
    .addClass("button vimeo"); // add class to style ##

然而,vimeo将内容推出iframe并重新加载页面 - 所以我需要一个与此url匹配的正则表达式 - 可以通过iframe嵌入:

http://player.vimeo.com/video/44799432

match(/player.vimeo\.com/);

没有做到 - 有什么想法吗?

注意:我显然需要一个循环来检查多个vimeo链接......

谢谢!

1 个答案:

答案 0 :(得分:1)

试试这个(未经测试)>>

jQuery("a").filter(function() {
    return jQuery(this).text().match(/vimeo\.com/igm);
  }).each(function() { 
    this.setAttribute("href", this.getAttribute("href")
    .replace(/^https?:\/\/(?:www\.|)vimeo\.com\/(\d+)$/i,
      "http://player.vimeo.com/video/$1")); 
  }).colorbox({iframe:true, innerWidth: "80%", innerHeight: "80%"})
  .addClass("button vimeo");