【问题标题】:Trying to embed a video when a link is clicked in jQuery在jQuery中单击链接时尝试嵌入视频
【发布时间】:2013-09-09 01:38:13
【问题描述】:

我正在尝试在点击时嵌入一个视频,而不是同时嵌入所有 10 个视频以增加加载时间。这样做的最佳方法是什么?提前感谢您的帮助。

<script type="text/Javascript">
    $('#rssdata').ready(function()
    {
        var pipe_url = 'http://pipes.yahoo.com/pipes/pipe.run?_id=4ac421def2dc13ca08c0eef36386563d&_render=json';
enter code here



var i = 1;

$.getJSON(pipe_url,function(data)
{

$(data.value.items).each(function(index,item)
{

var embed_link = item.link.replace("https://youtube.com/watch?v=",              "https://www.youtube.com/embed/");

var youtube_Embed = '<iframe width="560" height="315" src="'+ embed_link + '" frameborder="0" allowfullscreen></iframe>'


var item_html = '<li><div data-toggle="collapse" href="#element' + i + '"><a href="'+item.link+'">'+item.title+'<\/a></div><\/li>';

item_html += '<div class="collapse" id="element' + i + '">' + youtube_Embed + '</div>';

$('#rssdata ul.rss-items').append(item_html);

i++;
});
$('#rssdata div.loading').fadeOut();
$('#rssdata ul.rss-items').slideDown();
});
});
</script>
</div>
</div>

【问题讨论】:

    标签: jquery youtube embed


    【解决方案1】:

    HTML

    <div class="container">
        <div class="video"><iframe width="560" height="315" src="//www.youtube.com/embed/zsYjsgm4Psg" frameborder="0" allowfullscreen></iframe>
        </div>
    
    <ul class="list_video">
     <li><a href="javascript:load_video('https://www.youtube.com/watch?v=NWHfY_lvKIQ')">Learning from StackOverflow.com</a></li>
     <li><a href="javascript:load_video('https://www.youtube.com/watch?v=QZWBtfSBlp8')">Joel Spolsky - StackOverflow.com </a></li>
     <li><a href="javascript:load_video('https://www.youtube.com/watch?v=m4ZPBPUA30M')">Jeff Atwood - Stackoverflow.com</a></li>
     <li><a href="javascript:load_video('https://www.youtube.com/watch?v=NWHfY_lvKIQ')">Learning from StackOverflow.com</a></li>
     <li><a href="javascript:load_video('https://www.youtube.com/watch?v=QZWBtfSBlp8')">Joel Spolsky - StackOverflow.com </a></li>
     <li><a href="javascript:load_video('https://www.youtube.com/watch?v=m4ZPBPUA30M')">Jeff Atwood - Stackoverflow.com</a></li>
     <li><a href="javascript:load_video('https://www.youtube.com/watch?v=NWHfY_lvKIQ')">Learning from StackOverflow.com</a></li>
     <li><a href="javascript:load_video('https://www.youtube.com/watch?v=QZWBtfSBlp8')">Joel Spolsky - StackOverflow.com </a></li>
     <li><a href="javascript:load_video('https://www.youtube.com/watch?v=m4ZPBPUA30M')">Jeff Atwood - Stackoverflow.com</a></li>
     <li><a href="javascript:load_video('https://www.youtube.com/watch?v=NWHfY_lvKIQ')">Learning from StackOverflow.com</a></li>
     <li><a href="javascript:load_video('https://www.youtube.com/watch?v=QZWBtfSBlp8')">Joel Spolsky - StackOverflow.com </a></li>
     <li><a href="javascript:load_video('https://www.youtube.com/watch?v=m4ZPBPUA30M')">Jeff Atwood - Stackoverflow.com</a></li>
     <li><a href="javascript:load_video('https://www.youtube.com/watch?v=NWHfY_lvKIQ')">Learning from StackOverflow.com</a></li>
     <li><a href="javascript:load_video('https://www.youtube.com/watch?v=QZWBtfSBlp8')">Joel Spolsky - StackOverflow.com </a></li>
     <li><a href="javascript:load_video('https://www.youtube.com/watch?v=m4ZPBPUA30M')">Jeff Atwood - Stackoverflow.com</a></li>
    </ul>
    </div>
    

    CSS

    .container{
        width:800px;
        border:2px solid #333;
        overflow:hidden;
        font-family:arial;
        background-color:#000;
    }
    .video{float:left;}
    ul.list_video{float:left;list-style-type:none;margin:0;padding:0;width:240px;overflow-y:scroll;height:315px;}
    ul.list_video li{font-size:10pt;}
    ul.list_video li a{
        display:block;
        text-decoration:none;
        color:#09C;
        padding:3px;
        text-align:left;
        background-color:#333;
        border-bottom:1px solid #000;
    }
    ul.list_video li a:hover{background-color:#000;}
    

    Javascript + jQuery

    function load_video(link){
        link = link.replace("https:","");
        link = link.replace("watch?v=","embed/");
        $('.video').html('<iframe width="560" height="315" src="'+link+'" frameborder="0" allowfullscreen></iframe>')
    }
    

    我允许自己制作一个视频列表,然后单击更改 iframe URL 以解析来自 YouTube 的视频

    这里:http://jsfiddle.net/XdZm5/2/

    【讨论】:

    • 如何将我的 json 提要包含在其中?
    猜你喜欢
    • 2021-06-28
    • 1970-01-01
    • 2015-02-04
    • 2020-09-09
    • 1970-01-01
    • 2013-05-13
    • 2013-03-04
    • 2013-05-15
    • 1970-01-01
    相关资源
    最近更新 更多