对于在网页上创建的每个新YT.Player,YouTube iFrame API会在网络标签中复制请求

时间:2017-09-14 15:55:48

标签: javascript iframe youtube youtube-api youtube-javascript-api

我的页面上有一次https://www.youtube.com/iframe_api脚本声明,但是当我用它来创建具有这些功能的视频时:

// "youtubeAPI" is just an object I defined to namespace all my helper functions

youtubeAPI.init = function() {
  $(".js-project-card-video").each(function() {
    youtubeAPI.createVideo($(this).attr("data-project-id"), $(this).attr("data-video-id"));
  });
};

youtubeAPI.createVideo = function(projectID, videoID) {
  var project = $(".js-project-card-video[data-project-id='" + projectID + "']");
  var identifier = "video_" + projectID;
  youtubeAPI[identifier] = project;
  youtubeAPI[identifier] = new YT.Player(youtubeAPI[identifier][0], {
    width: "100%",
    height: "100%",
    videoId: videoID,
    playerVars: {
      enablejsapi: 1,
      controls: 0,
      playsinline: 1,
      rel: 0,
      modestbranding: 1,
      showinfo: 1
    }
  });
};

我最终在每个视频的网络标签中针对某些YouTube API资源(例如www-embed-player.jsbase.js)提出了一组新的重复请求。因此,我看到www-embed-player.jsbase.js和其他人在我的网络标签中列出了5次。

这有什么值得担心的吗?我认为它是在第一次请求后缓存的,但仍然是很多网络请求......对于为什么会发生这种情况的任何想法?

0 个答案:

没有答案