【问题标题】:How to create a global function from within a scope如何从范围内创建全局函数
【发布时间】:2013-12-12 22:36:41
【问题描述】:

我有这样一个功能:

function CreateYoutubePlayer(alpha, bravo, charlie, delta, echo) {
    var s = document.createElement("script");
    s.src = "//www.youtube.com/iframe_api";
}

加载的脚本需要一个名为onYouTubeIframeAPIReady 的全局函数。如何在上述函数中创建此函数,使其可全局访问。

【问题讨论】:

  • window.func = function(){} 或只是func = function(){}

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


【解决方案1】:

您可以将函数附加到全局窗口对象:

function CreateYoutubePlayer(alpha, bravo, charlie, delta, echo) {
    var s = document.createElement("script");
    s.src = "//www.youtube.com/iframe_api";

    window.onYouTubeIframeAPIReady = function() {}
}

【讨论】:

    【解决方案2】:

    您可以在CreateYoutubePlayer 函数之外将onYouTubeIframeAPIReady 声明为空变量。这将创建一个全局变量,然后您可以在 CreateYoutubePlayer 中填充该函数

    【讨论】:

    • 我想尽可能避免这种情况。
    猜你喜欢
    • 2012-07-05
    • 2018-10-29
    • 2022-09-23
    • 2017-01-20
    • 1970-01-01
    • 2013-06-21
    • 2012-02-18
    • 2013-07-13
    • 2012-09-08
    相关资源
    最近更新 更多