javascript - 使用 jQuery append YouTube 视频嵌入?

标签 javascript jquery youtube append src

我需要将“&rel=0”添加到 YouTube 嵌入代码的结束 SRC 标记的末尾。放置“xCODE NEEDS TO HEREx”的位置就是我需要放置 &rel=0 的位置。有没有办法使用 jQuery 的 Append 函数来做到这一点?

<embed src="http://www.youtube.com/v/S6I6Fc5mJeE&hl=en_US&fs=1xCODE NEEDS TO GO HEREx" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="284" height="171"></embed>

我需要此功能,因为我们的网站上有多个视频,并且必须找到正确的数据库表并对其进行修改以纠正此问题,这是一件很痛苦的事情。

请帮忙!

亚当

最佳答案

试试这个:

 var __mainDiv;
 var __preLoaderHTML;
 var __opts;

 function __jQueryYouTubeChannelReceiveData(data) {

     var cnt = 0;

     $.each(data.feed.entry, function(i, e) {
         if (cnt < __opts.numberToDisplay) {
             var parts = e.id.$t.split('/');
             var videoId = parts[parts.length-1];
             var out = '<div class="video"><a href="' + 
                  e.link[0].href + '"><img src="http://i.ytimg.com/vi/' + 
                  videoId + '/2.jpg"/></a><br /><a href="' + 
                  e.link[0].href + '">' + e.title.$t + '</a><p>';
             if (!__opts.hideAuthor) {
                 out = out + 'Author: ' + e.author[0].name.$t + '';
             }
             out = out + '</p></div>';
             __mainDiv.append(out);
             cnt = cnt + 1;
         }
     });

    // Open in new tab?
    if (__opts.linksInNewWindow) {
        $(__mainDiv).find("li > a").attr("target", "_blank");
    }

    // Remove the preloader and show the content
    $(__preLoaderHTML).remove();
    __mainDiv.show();
}

(function($) {
    $.fn.youTubeChannel = function(options) {
        var videoDiv = $(this);

        $.fn.youTubeChannel.defaults = {
            userName: null,
            channel: "favorites", //options are favorites or uploads
            loadingText: "Loading...",
            numberToDisplay: 3,
            linksInNewWindow: true,
            hideAuthor: false
        }

        __opts = $.extend({}, $.fn.youTubeChannel.defaults, options);

        return this.each(function() {
            if (__opts.userName != null) {
                videoDiv.append("<div id=\"channel_div\"></div>");
                __mainDiv = $("#channel_div");
                __mainDiv.hide();

                __preLoaderHTML = $("<p class=\"loader\">" + 
                    __opts.loadingText + "</p>");
                videoDiv.append(__preLoaderHTML);

                // TODO: Error handling!
                $.ajax({
                    url: "http://gdata.youtube.com/feeds/base/users/" + 
                        __opts.userName + "/" + __opts.channel + "?alt=json",
                    cache: true,
                    dataType: 'jsonp',                    
                    success: __jQueryYouTubeChannelReceiveData
                });
            }
        });
    };
})(jQuery);

要使用 YouTube 插件,您只需添加对 jQuery 库和 jquery.youtube.channel.js 文件的脚本引用。然后添加一个容器来保存渲染的 HTML、一行 JavaScript 来连接所有内容,以及一些 CSS 来格式化输出:

<script type=”text/javascript” src=”jquery.youtube.channel.js”></script>

<div id="youtubevideos"></div>

<script type="text/javascript">
$(document).ready(function() {
$('#youtubevideos').youTubeChannel({
userName: 'diggerdanh',
channel: "favorites",
hideAuthor: false,
numberToDisplay: 6,
linksInNewWindow: true
//other options
//loadingText: "Loading...",
});
});
</script>

关于javascript - 使用 jQuery append YouTube 视频嵌入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4199816/

相关文章:

javascript - setTimeout 动态延迟

jQuery .attr ("disabled"、 "disabled")在 Chrome 中不起作用

ruby-on-rails - YouTube 的 Google 身份验证在 Rails 中不起作用

javascript - 从 youtube 视频生成音频波形

javascript - 添加/删除选择框 jquery javascript

javascript - selenium IDE 不删除属性 "readonly"

javascript - jquery 将所有 <ol> 替换为 <ul>

php - 无法弄清楚PHP中的字符编码

php - 在将多个或批量插入查询更改为 PDO 时需要帮助

javascript - 在特定上下文中执行通过 .ajax 加载的 &lt;scripts>