更改iframe的src

时间:2011-12-16 06:59:30

标签: jquery ajax

尝试在src包含youtube.com的页面上更改/修改任何/所有iframe的来源,并从src网址获取视频ID。

到目前为止,这是我的工作。

$(document).ready(function(){
changeYoutube();
function changeYoutube()
{
    $('iframe').each(function() {

   var that = $(this);
   var href = that.attr('src');

   if(href.search('youtube.com') != -1) {      
      that.attr('href', href+'&autoplay=1');
   }

});
});

我还需要将网址中的视频ID放入var中。示例网址:     http://www.youtube.com/embed/hP9rBDYYFvw?fs=1&feature=oembed 其中“hP9rBDYYFvw”是该网址中的视频ID。

由于

3 个答案:

答案 0 :(得分:1)

这是解决方案:

  <script type="text/javascript">
    function changeYoutube() {
        $('iframe').each(function () {

            var that = $(this);
            var href = that.attr('src');

            if (href.search('youtube.com') != -1) {
                that.attr('src', href + '&autoplay=1');

               // code to get id

                    var tmp = href.split("?");
                var tmp2 = tmp[0].split("/"); 
                var ID = tmp2[tmp2.length - 1];
            }

        });
    }

    $(document).ready(function () {
        changeYoutube();
    });
  </script>

首先您已设置href属性,但您必须设置iframe的src属性。第二,您必须首先定义在文档就绪后调用的函数,并且在您的代码中,您尚未关闭该函数。最诚挚的问候。

答案 1 :(得分:0)

您缺少一个右大括号 }

将最后一行 }); 替换为 }});

答案 2 :(得分:0)

$(document).ready(function(){
    changeYoutube();
});

function changeYoutube() {
    $('iframe').each(function() {
       if($(this).attr('src').search('youtube.com') != -1) {
          var href = $(this).attr('src');      
          $(this).attr('src', href+'&autoplay=1');
       }
    });
}

这只是你的另一种风格。也许它有效..请尝试