创建Facebook和Twitter等Javascript API

时间:2012-05-21 06:26:03

标签: javascript facebook api twitter

我正在为我的应用程序创建类似于Facebook或Twitter Javascript SDK如何工作的javascript API方法。有人可以请求有关资源的建议,可以帮助我类似地开发Javascript方法。我打算做以下事情:

  • 用户应该能够异步加载Javascript。
  • 加载Javascript后,调用方法以在特定元素上加载iframe。

感谢人们是否可以帮助我实现这个目标?

1 个答案:

答案 0 :(得分:1)

做这样的事情非常简单。

异步加载库很容易,与facebook无关,这是一个javascript的东西,例如使用facebook的例子:

(function(d){
    var js, 
        id = "LIB_ID", 
        ref = d.getElementsByTagName('script')[0];

    if (d.getElementById(id)) {
        return;
    }

    js = d.createElement("script");
    js.id = id;
    js.async = true;
    js.src = "URL_OF_LIB";
    ref.parentNode.insertBefore(js, ref);
}(document));

那将异步加载你的js。

为了能够“通知”已加载库,您可以使用facebook正在使用的方法来定义窗口上的回调,因此lib的用户将执行以下操作:

window.libLoaded = function() {
        // Do what ever when the library is loaded
}

在您的lib代码中,最后只需调用该回调:

window.libLoaded();

动态创建iframe也非常简单:

function loadFrame(url, domEl) {
        var frame = document.createElement("iframe");
        frame.src = url;
        domEl.appendChild(frame);
}

但是,您将无法在iframe文档和主文档之间进行通信,因为(我假设)它们不会共享同一个域,并且浏览器会因相同的原始策略而阻止它。