网站调用新浪微博内容(博客平台来说不支持iframe的两种解决办法方法)
优采云 发布时间: 2022-01-19 18:09网站调用新浪微博内容(博客平台来说不支持iframe的两种解决办法方法)
很多博客可以自己添加和修改一些代码,但是作为博客平台,出于安全考虑,往往需要对一些特性进行过滤。比如新浪微博的挂件都是iframe的形式,但是博客园不支持iframe。经过一番尝试,我终于找到了以下两种解决方案:
首先在公告中写一个空的div,这样我们就可以插入新的iframe,省去按类选择的麻烦:
<br />
1、在公告中直接用innerHTML插入iframe代码:
innerHTML 非常简单。从新浪微博的配置中,匹配你想要的样式,然后它会自动生成一段html代码,类似如下:
但是如果直接这样写,是不会生效的:
var ifr = '';<br /><br />document.getElementById('weiboIframe').innerHTML = ifr;
估计是博客园的背景是直接匹配iframe文本的,所以我们打乱这个,让他检测不到逻辑,改成这样就成功了:
<br />var ifr = '';<br />document.getElementById('weiboIframe').innerHTML = ifr;<br />
2、也可以使用createElement方法:
因为这里有人用过Google Adsense的代码,我猜这个方法可以用。经过测试,确实是可以的,但是比上面的还要多写几句:
<br /><br />var iii = document.createElement('iframe');<br />iii.src = 'http://widget.weibo.com/weiboshow/index.php?width=0&height=100&fansRow=1&ptype=1&speed=0&skin=1&isTitle=1&noborder=0&isWeibo=0&isFans=0&uid=1855270953&verifier=375b89d6';<br />iii.height = 115;<br />iii.width = '100%';<br />iii.className = 'share_self';<br />iii.scrolling = 'no';<br />document.getElementById('weiboIframe').appendChild(iii);<br /><br />
将以上内容放入公告中,即可展示您的新浪微博