Javascript 如何重新加载嵌入式tweet?
我在这里查找了其他答案,以及建议的跑步解决方案:Javascript 如何重新加载嵌入式tweet?,javascript,twitter,Javascript,Twitter,我在这里查找了其他答案,以及建议的跑步解决方案: twttr.widgets.load(); 不适合我 所讨论的tweet是使用标准嵌入代码嵌入的,例如: <blockquote class="twitter-tweet" lang="en"><p lang="en" dir="ltr">On this day in 1996, the final episode of The Fresh Prince aired on TV. <a href="http://
twttr.widgets.load();
不适合我
所讨论的tweet是使用标准嵌入代码嵌入的,例如:
<blockquote class="twitter-tweet" lang="en"><p lang="en" dir="ltr">On this day in 1996, the final episode of The Fresh Prince aired on TV. <a href="http://t.co/nYN5PJQUbJ">pic.twitter.com/nYN5PJQUbJ</a></p>— Will Smith (@WilII_Smith) <a href="https://twitter.com/WilII_Smith/status/601025109881663488">May 20, 2015</a></blockquote>
<script async src="//platform.twitter.com/widgets.js" charset="utf-8"></script>
1996年的今天,《新鲜王子》的最后一集在电视上播出 &mdash;威尔·史密斯(@WilII_-Smith)
我之所以想重新加载它们,是因为在IOS(iPhone)上,当你从纵向模式切换到横向模式时,tweet仍然保持纵向大小。无论如何,我认为刷新tweet会在从纵向到横向的更改中提供适当的大小,以便填充屏幕宽度。您可以在页面上添加一个脚本,获取tweet ID,并在窗口更改时重新创建:
$(window).resize(function() {
$.getScript('//platform.twitter.com/widgets.js', function(){
var k = 0;
var tweet = document.getElementById('twitter-widget-'+k);
var tweetParent, tweetID, tweetNext;
while(tweet) {
tweetParent = tweet.parentNode;
tweetID = tweet.dataset.tweetId;
$(tweet).remove();
tweetNext = $(tweet).next();
if (tweetNext.prop("tagName") == 'SCRIPT') tweetNext.remove();
twttr.widgets.createTweet(
tweetID,
tweetParent
);
k++;
tweet = document.getElementById('twitter-widget-'+k);
}
});
})
原元件已更换。因此,使用
load
在这里不起作用。看看twitter事件。您可以将定向事件与此挂钩,以重新设置推文的样式@你能举个例子吗?我读了那个文档页面,但仍然不知道该怎么做。