热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

ReferenceError:即使使用twttr.ready(),"twttr也未定义"

如何解决《ReferenceError:即使使用twttr.ready(),"twttr也未定义"》经验,为你挑选了2个好方法。

Firebug控制台抛出错误.它声明我在尝试用于跟踪社交事件的代码是在//platform.twitter.com/widgets.js异步加载完成之前使用的.

ReferenceError:twttr未定义twttr.ready(function(twttr){

但是,我遵循了Twitter文档(https://dev.twitter.com/web/Javascript/events),并将其包装在twttr.ready()中,就像使用Facebook事件一样.

    


任何提示?



1> 小智..:

它似乎twttr尚未初始化.确保脚本(//platform.twitter.com/widgets.js)在您拥有的代码块之前加载.

这就是你未定义的原因(twttr).

看到你的编辑后,很清楚发生了什么.您的脚本在页面加载后附加头部并加载脚本.在您执行代码之后,这些代码依赖于您注入头部并仍在加载的内容,这就是为什么twttr尚未初始化的原因.

请尝试以下代码块:

window.addEventListener("load", function() {
    window.fbAsyncInit = function() {
        FB.Event.subscribe('edge.create', function(targetUrl) {
            ga('send', 'social', 'facebook', 'like', targetUrl);
        });
        FB.Event.subscribe('edge.remove', function(targetUrl) {
            ga('send', 'social', 'facebook', 'unlike', targetUrl);
        });
    }

    document.getElementById('tweetjs').addEventListener('load', function() {
        twttr.ready(function (twttr) {
            twttr.events.bind('tweet', function(e){
                if(!e) return;
                ga('send', 'social', 'twitter', 'tweet', theURL);
            })
        });
    }, false);
}, false);

如果您需要跨浏览器支持,您可能希望首先按照他们在其函数中所做的操作来检查window.addEventListener,然后回退到旧版浏览器的window.attachEvent.


需要初始化twttr对象以便具有就绪功能.

2> Grant..:

对于那些遇到'twttr is undefined'问题的人,以下问题为我解决了......

在正文打开后包含此脚本,并确保在复制和粘贴时从按钮嵌入中删除widget.js脚本.

window.twttr = (function(d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0],
t = window.twttr || {};
if (d.getElementById(id)) return t;
js = d.createElement(s);
js.id = id;
js.src = "https://platform.twitter.com/widgets.js";
fjs.parentNode.insertBefore(js, fjs);

t._e = [];
t.ready = function(f) {
t._e.push(f);
};

return t;
}(document, "script", "twitter-wjs"));

推荐阅读
author-avatar
我_纯情至上
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有