检测已删除的嵌入式推文

时间:2012-09-25 08:04:09

标签: javascript twitter embed tweets

如果您在网页上嵌入了推文并且Tweet的作者随后删除了原始内容,则嵌入将继续显示在您的网页上,尽管减去作者的头像和意图链接。

我想要隐藏此类推文,或者可能会向我的服务器发送一个调用来删除我的数据库中的这些对象。我假设作者有理由删除,可能更喜欢不再显示推文。

我不是JavaScript专家,所以我只是猜测http://platform.twitter.com/widgets.js中有一些东西可以检测到这种情况,因此不会显示头像和链接。

我可以捕获它并使用它来隐藏嵌入或进行ajax调用吗?

我已经在页面上有jQuery,如果有帮助的话。

[编辑]另一件事:'实时'嵌入推文包括

    <span class=avatar>

包含图片。如果已删除推文,则相同的范围为空。可以用JavaScript检测到吗?

2 个答案:

答案 0 :(得分:3)

我知道这是旧的,但我有类似的问题,我找到了解决方案。

我解决这个问题的方法是使用一个css规则应用于oembed中的blockquotes。如果您这样做:

.container blockquote {
    display: none;
}

基本上,widgets.js javascript会自动删除此css规则,但仅适用于存在的推文,将那些不存在的推文保留为display:none和hidden。

这看起来有点hacky但是直到twitter为我们提供了一个稍微好一些的小部件javascript api,它似乎是一个很好的解决方案。

答案 1 :(得分:0)

如果Tweet已被删除,则blockquote元素保持不变,iframe的高度为0.我通过jQuery ajax加载嵌入的Tweets,使用$ .getScript()加载widget.js。

jQuery.getScript('http://platform.twitter.com/widgets.js', function() {
    $('blockquote.twitter-tweet').remove();
});
相关问题