javascript - Twitter 嵌入时间线消失

标签 javascript jquery twitter

我通过 Jquery 嵌入了 Twitter 时间线,以便当用户单击按钮时,它会创建带有时间线的 div...当他再次单击它时,时间线就会消失。

这有效,但是当我再次单击该按钮时,它不想再次加载。所以我每页只加载一次。

$("#TWT").click(function(e) {
        e.preventDefault(); 
        if(loadHtml == "empty") {
        $( "#authorName" ).load( "test.html" );
        loadHtml = "full";
        } else if(loadHtml == "full") {
            $("#tweetDiv").remove();
            loadHtml = "empty";
            }
    });

test.html包含嵌入内容,loadHtml设置为空。

我的实际实现更为复杂,但我已将其简化为这样,以便我可以看到出了什么问题。包含 twitter feed 的 div 再次出现...但 feed 不会再次加载。

在不加载的情况下多次向页面提供嵌入时间线是否存在问题?如果我刷新页面,它会再次起作用......仅一次。

PS:只是澄清一下 - 这不是 div 不再显示的问题。当我查看生成的 html 时,它显示得很好。只是 Twitter 不想再次加载。

最佳答案

我刚刚遇到了类似的问题并解决了。 您必须包含一些像 twitter 提供的 JavaScript:

        !function(d,s,id){
            var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';
            if(!d.getElementById(id)){
                console.log("executed");
                js=d.createElement(s);
                js.id=id;
                js.src=p+"://platform.twitter.com/widgets.js";
                fjs.parentNode.insertBefore(js,fjs);
            }
        }(document,"script","twitter-wjs");

我通过注释 if() 语句解决了这个问题:

        !function(d,s,id){
            var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';
            //if(!d.getElementById(id)){
                console.log("executed");
                js=d.createElement(s);
                js.id=id;
                js.src=p+"://platform.twitter.com/widgets.js";
                fjs.parentNode.insertBefore(js,fjs);
            //}
        }(document,"script","twitter-wjs");

关于javascript - Twitter 嵌入时间线消失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22966190/

相关文章:

javascript - 正则表达式更改 html 标签内的文本

php - 通过文件上传缺少 PHP 中的临时文件。 Ajax

jquery - 创建 div 元素列表 : position not working fine

javascript - 根据验证结果在 ASP 中应用 jQuery 效果

javascript - 通过事件监听器打开/关闭传单图例

javascript - 通过 ajax 刷新 WooCommerce 迷你购物车

python - 使用 Tweepy 将推文插入 MySQL DB

Twitter oauth 的 JavaScript 重定向导致无效的 oauth_verifier 参数

javascript - 无法使用 setTimeout 撤消 bool 值

java - Finagle Future 对象,它们可重用吗?