随笔 - 3461, 文章 - 0, 评论 - 739, 阅读 - 1200万
  管理

给博客园加上新浪微薄的挂件

Posted on   lzhdim  阅读(327)  评论(0编辑  收藏  举报

很多博客都可以自己添加修改一些代码,但是作为博客平台来说,可能为了安全考虑,很多时候要过滤一些特性,比如:新浪微博的挂件是iframe形式的,但是博客园不支持iframe。经过一些尝试,最终有了下面两种解决办法:

首先先在公告中写一个空div,方便我们插入新建的iframe,省的用class选来选去的麻烦:

<div id="weiboIframe">
</div>

1、在公告中直接用innerHTML插入iframe代码:

innerHTML是很很简单的,从新浪微博的配置中,配好你自己想要的样式,然后他会自动生成一段html代码,类似下面这样的:

<iframe width="100%" height="100" class="share_self"  frameborder="0" scrolling="no" 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"></iframe>

但是如果你直接写成下面这个样子的话,不会生效的:

var ifr = '<iframe width="100%" height="100" class="share_self"  frameborder="0" scrolling="no" 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"></iframe>';

document.getElementById(
'weiboIframe').innerHTML = ifr;


估计博客园后台直接去匹配iframe文本,所以我们把这个打乱,这样,他应该不会去检测逻辑,改成这样就成功了:

<script type="text/javascript">
var ifr = '<ifra';
ifr
+= 'me width="100%" height="115" class="share_self" frameborder="0" scrolling="no" 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"></ifr';
ifr
+= 'ame>';
document.getElementById('weiboIframe').innerHTML = ifr;
</script>

  


2、还可以使用createElement方法:

因为这里有人用过Google Adsense的代码,所以猜测这个方法是可以使用的,经过测试,确实可用,就是比上面那个要多写一些东西:

复制代码
<script type="text/javascript">

var iii = document.createElement('iframe');
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';
iii.height
= 115;
iii.width
= '100%';
iii.className
= 'share_self';
iii.scrolling
= 'no';
document.getElementById(
'weiboIframe').appendChild(iii);

</script>
复制代码

  

编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
历史上的今天:
2009-07-20 随笔 - 微笑
2009-07-20 国内PHP开源建站程序一览
2009-07-20 国外优秀开源PHP建站程序一览
Copyright (C) 2000-2025 Lzhdim Software All Rights Reserved
点击右上角即可分享
微信分享提示