弹出窗口在iframe中显示youtube视频

 九九九丶 发布于 2023-01-30 17:14

请帮我实现这个功能!

单击时,弹出容器,其中加载标题和iframe(来自Youtube的视频).
有任何想法吗?
也许有插件?






title

PS抱歉我的英文=) 在此输入图像描述

2 个回答
  • 扩展@Eregec回答以使视频显示在弹出窗口中.

    HTML

    <div class="page">
        <p><a href="#media-popup" data-media="//www.youtube.com/embed/YoXa2Pl7Hk0">click me</a></p>
    
        <div class="popup" id="media-popup">
            <iframe   src="" frameborder="0" allowfullscreen></iframe>
        </div>
    </div>
    

    CSS

    html,
    body {
        margin:0; padding:0; height:100%;
    }
    p {
        margin:0;
    }
    .page {
        position: relative;
        height:100%;
    }
    
    .popup {
        position:absolute;
        z-index:2;
        top:0;
        left:0;
        width:100%;
        height:100%;
        background:rgba(0,0,0,0.7);
        opacity:0;
        visibility:hidden;
        transition:.3s ease;
    }
    
    .show-popup .popup {
        opacity:1;
        visibility: visible;    
    }
    
    .popup > iframe {
        position:absolute;
        top:50px;
        left:50%;
        margin-left:-280px;
    }
    

    JS

    $("[data-media]").on("click", function(e) {
        e.preventDefault();
        var $this = $(this);
        var videoUrl = $this.attr("data-media");
        var popup = $this.attr("href");
        var $popupIframe = $(popup).find("iframe");
    
        $popupIframe.attr("src", videoUrl);
    
        $this.closest(".page").addClass("show-popup");
    });
    
    $(".popup").on("click", function(e) {
        e.preventDefault();
        e.stopPropagation();
    
        $(".page").removeClass("show-popup");
    });
    
    $(".popup > iframe").on("click", function(e) {
        e.stopPropagation();
    });
    

    JS小提琴

    2023-01-30 17:17 回答
  • HTML

    <a class="popup" href="#!" data-link="http://www.youtube.com/embed/fbVD32w1oTo?enablejsapi=1" data-title="How to install SASS">SASS</a>
    
    <a class="popup" href="#!" data-link="http://www.youtube.com/embed/Q0HFBy2BtfA?enablejsapi=1" data-title="How to install Node.js">Node.js</a>
    
    
    <div id="video-view">
    </div>
    

    JQuery的

    $(".popup").click(function () {
        var $this = $(this);
        var $iframe = $("<iframe>").attr("src", $this.data("link")).css({"width": 400, "height": 300});
        var $title = $("<h1>").text($this.data("title"));
        $("#video-view").html($title).append($iframe);
        $iframe.wrap("<div class='class-video'>");
    });
    

    的jsfiddle

    http://jsfiddle.net/ergec/BrW5w/

    2023-01-30 17:17 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有