【问题标题】:Appending parameter to commented-out iframe src将参数附加到注释掉的 iframe src
【发布时间】:2012-03-06 02:18:58
【问题描述】:

我有一个包含大量视频列表的页面,因此我使用的缩略图会在单击时取消注释实际的视频嵌入代码(以加快加载时间)。

为避免需要两次点击才能播放视频,这些 iframe 视频必须自动播放。所以我还需要在所有 iframe src 中附加一个&autoplay=1 参数。

这是我到目前为止的代码,但我不知道如何选择注释元素:

$(function() {
   $("iframe").attr('src', function(i, h) {
      return h + (h.indexOf('?') != -1 ? "&autoplay=1" : "?autoplay=1");
   });
});

【问题讨论】:

    标签: jquery iframe


    【解决方案1】:

    评论就是这样,cmets,而不是元素。不能被操纵。您可能想要做的是隐藏视频并取消隐藏它们。

    【讨论】:

    • 这会破坏这样做以避免长时间加载的目的。我知道注释元素可以被操纵。这不像使用选择器那么容易......
    • 嗯,默认情况下我认为你不能这样做,除非你使用像chivil.com/uncomment 这样的东西。但是 IMO,为您的目的评论和取消评论元素,我认为这不是正确的方法。
    • 为什么不将视频的 url 存储在变量中,然后在需要时通过提取这些值将 iframe 附加到 DOM 中?这不会影响性能,是一种更可行的方法。
    【解决方案2】:

    更好的方法可能是将嵌入代码存储在 js 中,并使用它来填充视频区域。视频的链接可以像往常一样在 dom 中。像这样的:

     function makeEmbed(link){
          return '<embed part1>' + link + '</embed part2 including autoplay>';
     }
    
     $('a.videolink').click(function(e){
          e.preventDefault();
          var newEmbed = makeEmbed( $(this).attr('href') );
          append(newEmbed);
     });
    

    【讨论】:

    • 这里的另一个好处是,如果关闭js,按钮会链接到视频。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-01-07
    • 2021-08-28
    • 1970-01-01
    • 1970-01-01
    • 2023-03-28
    • 2013-01-13
    • 2016-11-28
    相关资源
    最近更新 更多