• Register

修正Ajax-comments错误提示导致整体页面变形

最近博客SPAM越来越多,头疼!所以一直想写一个有针对性的anti-spam插件出来,但一直没有时间!最近压力很大!

但spamer的活跃给了我动力,熬夜弄了个插件雏形试用过程中发现,当评论提交时Ajax提示错误后,整个页面扭曲变形了。。。

在firebug帮助下,发现页面变形原因是css里的body样式竟然被替换了。

页面变形的css的body样式

导致变形的body样式来源于 /wp-admin/css/install.css 这个应该是根据wordpress源码调用的!顺着 install.css 找到了ajax错误提示部分的html代码:

页面变形的html代码

上图中,画框中的就是导致页面变形的代码,下面就是解决问题了!

根据 haibor 的准则,是不太愿意直接修改源代码的,想到了错误既然来自js,那就可以用正则取消框中代码标签的显示!试试看!

我用的 ajax 评论效果的JS代码,是由Willin Kan编写的Ajax-Comments v1.3版!

在 comments-ajax.js 代码里搜索关键字“responseText”(其它版本也可以搜索这个关键字),这个是控制输出的,大概在 45 行:

$('#error').slideDown().html('<img src="' + pic_no + '" style="vertical-align:middle;" alt=""/> ' + request.responseText);

在其中加入正则,过滤掉上图框中的 <meta>、<title>、<link>标签及其内容,完整代码如下:

$('#error').slideDown().html('<img src="' + pic_no + '" style="vertical-align:middle;" alt=""/> ' + request.responseText.replace(/<(?!p).*?>(?:.*?<\/.*?>)?/gi,''));

红色部分为添加的代码!

版权声明:转载请注明来自杨俊伟博客,本文地址:http://yangjunwei.com/a/639.html
除非注明,杨俊伟博客文章均为原创,转载请注明出处和链接!
 

发表评论 

9 条评论 »

  • 皇家元林
    2011/12/17 at 21:02:01

    升级到3.3。。又出问题了。。。在红色叉叉处,溢出错误页的css样式。。。

  • 广州SEO
    2011/09/03 at 11:35:47

    是啊,最近的垃圾评论特别多!!!

  • 瑶药
    2011/09/01 at 17:35:23

    不太了解这个东东

  • 保健按摩器材
    2011/09/01 at 15:22:43

    这个还真没有遇到过,不错学习了

  • 流氓兔足迹
    2011/09/01 at 14:48:14

    兄弟,你好!最近我做了个博客圈子,现在已经把你的链接添加进去了!有空要记得去看一下哦!更希望兄弟能帮俺给力的宣传一下!谢谢了!http://www.x377.com/quanzi
    所以特此在这里通知兄弟一声!

  • 笔记本
    2011/09/01 at 12:32:28

    我很少装不太清楚的插件。

  • Louis Han
    2011/08/31 at 17:31:02

    没用过这个插件

    • 头像来自 新浪微博
      haibor
      2011/08/31 at 17:32:16

      @Louis Han 我觉得也是,但好像也是ajax的效果!

我还是想用邮箱注册

登录

忘记密码 ?

用第三方帐号快捷登录

已有账户?前往登录吧~

注册