Magnific Popup - 打开管视频时出错

时间:2013-06-04 12:18:00

标签: magnific-popup

无法在光标弹出窗口中播放视频。 当我使用class=iframe时,该页面将重定向到youtube并播放视频。 但是当我使用class=popup-youtube时,会显示弹出窗口,但是我收到以下错误消息:

找不到此网页

No webpage was found for the web address: file://www.youtube.com/embed/AcnImfXjBHo?autoplay=1
Error 6 (net::ERR_FILE_NOT_FOUND): The file or directory could not be found.

以下是HTML代码:

<a class="popup-YouTube" href="HTTP://www.youtube.com/watch?v=AcnImfXjBHo">
                                Trial Master File Video</a>    

这是JS:

$(document).ready(function() {
        $('.popup-youtube, .popup-vimeo, .popup-gmaps').magnificPopup({
            disableOn: 700,
            type: 'iframe',
            mainClass: 'mfp-fade',
            removalDelay: 160,
            preloader: false,

            fixedContentPos: false
        });
    });

我通过IIS在我的电脑上本地运行测试。我为单张图片,图库图片和谷歌地图设置的其他链接可以很好地弹出。该视频是唯一一个无效的视频。

5 个答案:

答案 0 :(得分:9)

确保您在服务器环境中运行此代码,或将https:添加到youtube src选项http://dimsemenov.com/plugins/magnific-popup/documentation.html#iframe-type

答案 1 :(得分:4)

为每个弹出窗口添加 extend 函数内的代码:

$.extend(true, $.magnificPopup.defaults, {  
    iframe: {
        patterns: {
           youtube: {
              index: 'youtube.com/', 
              id: 'v=', 
              src: 'http://www.youtube.com/embed/%id%?autoplay=1' 
          }
        }
    }
});

答案 2 :(得分:1)

我用“v”参数找到的东西,我看到核心文件“jquery.magnific-popup.js”中的模式

patterns: {
    youtube: {
        index: 'youtube.com',
            id: 'v=',
            src: '//www.youtube.com/embed/%id%?autoplay=1'
        }
}

前端链接:

<a href="https://www.youtube.com/embed/YQHsXMglC9A" class="popup-youtube">youtube link</a>

我提供了链接到A标签“https”网址但不起作用。

<a href="http://www.youtube.com/watch?v=YQHsXMglC9A" class="popup-youtube">youtube link</a>

我看到有效的网址“v”参数与视频代码“YQHsXMglC9A”,它的工作原理:)
所以我们只需要改变“v”参数值。

答案 3 :(得分:0)

Arrg!我花了一段时间才弄明白。课程&#34; popup-YouTube&#34;应全部小写。

而不是

<a class="popup-YouTube" href="https://www.youtube.com/watch?v=AcnImfXjBHo">
                                Trial Master File Video</a>

请注意YouTube

中的大写字母

应该是

<a class="popup-youtube" href="https://www.youtube.com/watch?v=AcnImfXjBHo">
                                Trial Master File Video</a>    

答案 4 :(得分:0)

<a class="popup-YouTube" href="//www.youtube.com/watch?v=AcnImfXjBHo"> Trial Master File Video</a>

删除&#34; HTTP:&#34;或&#34; HTTPS:&#34;。问题在于,如果您的网站使用HTTP打开,并且您的弹出视频网址以HTTPS开头,那么它会将您重定向到该网页。