从ajax加载的HTML加载twitter小部件?

Dav*_*ton 6 twitter ajax jquery

我正在尝试使用一个非常标准的Twitter搜索小部件,直接来自Twitter网站:

<script src="http://widgets.twimg.com/j/2/widget.js"></script>
<script>
new TWTR.Widget({
  version: 2,
  type: 'search',
  search: '$AAPL',
  interval: 6000,
  title: 'AAPL',
  subject: '',
  width: 250,
  height: 300,
  theme: {
    shell: {
      background: '#8ec1da',
      color: '#ffffff'
    },
    tweets: {
      background: '#ffffff',
      color: '#444444',
      links: '#1985b5'
    }
  },
  features: {
    scrollbar: false,
    loop: true,
    live: true,
    hashtags: true,
    timestamp: true,
    avatars: true,
    toptweets: true,
    behavior: 'default'
  }
}).render().start();
</script>
Run Code Online (Sandbox Code Playgroud)

而它正在加载如下:

$(".linktosymbol").bind("ajax:success", function(event, data, status, xhr) {
    $(".symboldetails").html("");
    var target = $("#" + $(this).attr('data-target'));
    target.html(data);
});
Run Code Online (Sandbox Code Playgroud)

它永远不会出现,它似乎只是空白屏幕并继续加载.想法?

Zna*_*kus 9

有同样的问题.问题是Twitter JS使用创建标记document.write,只有在生成文档时才能使用.否则它将创建一个新文档.

提示:在调试时,使用原始代码更容易http://twitter.com/javascripts/widgets/widget.js.

<div id="twtr-widget"></div>
<script src="http://widgets.twimg.com/j/2/widget.js"></script>
<script>
new TWTR.Widget({
  version: 2,
  type: 'profile',
  rpp: 4,
  interval: 6000,
  width: 500,
  height: 300,
  id: 'twtr-widget',
  theme: {
    shell: {
      background: '#333333',
      color: '#ffffff'
    },
    tweets: {
      background: '#000000',
      color: '#ffffff',
      links: '#4aed05'
    }
  },
  features: {
    scrollbar: false,
    loop: false,
    live: false,
    hashtags: true,
    timestamp: true,
    avatars: false,
    behavior: 'all'
  }
}).render().setUser('Znarkus').start();
</script>
Run Code Online (Sandbox Code Playgroud)

这是我的解决方案.添加id参数,Twitter将标记添加到具有该id的元素(这是顶部div的用途).

注意:我的脚本的缩小版本有问题,所以我使用了http://twitter.com/javascripts/widgets/widget.js.