【发布时间】:2017-07-02 20:58:35
【问题描述】:
我在 jQuery 中使用 Youtube API v3 时遇到了一个奇怪的问题。尽管有很多文档,但我找不到一种快速简单的方法来获取订阅者数量,最终我遇到了一个,它在这里的一个项目中效果很好; http://codepen.io/Sepshun/pen/bgOgzE(从第 33 行开始)
// Create a script element to execute the API URL
var getsubs = document.createElement("script");
getsubs.src = 'https://www.googleapis.com/youtube/v3/channels?part=statistics&id='+channelID+'&key=AIzaSyAyWsBUsAChiYPDOptU-NBAh_p7oExR1oc&callback=getJSON';
document.head.appendChild(getsubs);
// Get Youtube JSON response
function getJSON(response) {
var subCount = response.items[0].statistics.subscriberCount;
// Update YT Count Text
$("#yt-count").text(roundNum(subCount));
}
但是,当使用 jQuery 重构此代码以处理跨表的多个帐户时,youtube 部分不起作用; http://codepen.io/Sepshun/pen/apXqKO?editors=0011(第 29 行)
为了尝试总结一下,我定义了一个变量,使用该变量时将创建一个脚本元素,然后我根据当前的频道 ID 将该变量的源设置为指向 Youtube API 的链接,使用 &callback=getJSON,当脚本加载时它应该调用 getJSON 函数,从那里,订阅者计数被保存为一个变量,然后写入一个 DOM 元素,这是通过将 getsubs 变量附加到头部来初始化的。这在链接的第一支笔中完美无缺,但在第二支笔中,脚本元素被添加到头部,但没有调用 getJSON 函数。
我尝试搜索类似的问题,但似乎这有点过于具体,无法在其他地方找到答案。
【问题讨论】:
标签: javascript jquery youtube youtube-api youtube-data-api