多个 vimeo 模式用于华丽的弹出窗口

Multiple vimeo pattern for magnific popup

向那些自定义 magnific popup 的人提问 - 我如何在 Magnific Popup 插件中为 iframe 类型组合多个 vimeo 模式? 这是我需要播放的视频网址及其格式:

https://player.vimeo.com/external/xxxxx.hd.mp4

patterns: {
    ...
    vimeo: {
       index: '//vimeo.com/',
       id: '/',
       src: '//player.vimeo.com/external/%id%'
    },
    ...
}

https://vimeo.com/xxxx

patterns: {
    ...
    vimeo: {
       index: 'vimeo.com/',
       id: '/',
       src: '//player.vimeo.com/video/%id%?autoplay=1'
    },
    ...
}

每个模式单独工作,但问题是如何将它们一起使用?

谢谢

解决方案是将 id 用作函数:

patterns: {
      vimeo: {
        index: 'vimeo.com/',
        id: function(src){
           if (src.indexOf('external') > -1) {
              return 'external/' + src.substr(src.lastIndexOf('/')+1, src.length);
           } else {
              return 'video/' + src.substr(src.lastIndexOf('/')+1, src.length);
           }
        },
        src: '//player.vimeo.com/%id%?autoplay=1'
      },
    },