题外话:这几天一直在折腾Ajax评论提交,走了一个大圈还是回到了原点:willin的Ajax评论提交方式。不过算是了解了,可以自己升级修改了,精简了一些不必要的功能加快评论速度,再改改一些效果……麻烦大家继续测试ing
好,进入正题:这篇文章所说的内容其实对于熟悉jQuery的朋友来说非常简单,但因为有人要,就贴出来,顺便解决一下即将来临的文囧。
前提:
1. 挂 jQuery 库,如果没有挂就把下面的js调用扔到 header.php 里面的 <?php wp_head() ?> 前面
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
2. 使用标准的评论结构,参考 WordPress 官方 http://codex.wordpress.org/Function_Reference/wp_list_comments 的 Examples 部分
准备:
在functions.php找到主题的回调函数,找到类似下面的
<div class="reply"> <?php comment_reply_link(array_merge( $args, array('depth' => $depth, 'max_depth' => $args['max_depth']))) ?> </div>
复制一份稍微修改一下,变成如下
<div class="reply"> <?php comment_reply_link(array_merge( $args, array('depth' => $depth, 'max_depth' => $args['max_depth']))) ?> </div> <div class="quote"> <?php comment_reply_link(array_merge( $args, array('depth' => $depth, 'max_depth' => $args['max_depth']))) ?> </div>
注:你可能还需要修改 quote 显示样式css,最简单的就是在 .reply 上加上一个 .quote,自个折腾
jQuery代码:(把下面的添加到你的js文件或者直接加到footer.php的<?php wp_foot() ?>后面,用<script type="text/javascript"></script>引用)
(2010.8.28 Edit)漏一句jQ代码,为复制的reply按钮文字换为“quote”
//评论引用 by zwwooooo jQuery(".quote a").text("quote");//替换复制的reply按钮文字为quote jQuery('.quote').click(function() { var atname = jQuery(this).parent().find('cite:first').text();//获得作者名称 var quotecontent = jQuery(this).parent().find('.comment-content:first').html();//获得评论内容 jQuery("#comment").attr("value","<blockquote><strong>" + atname + ": </strong>" + quotecontent + "</blockquote>\n").focus();//组合成引用 });
如果你要带@xxx的就如下:
//评论引用 by zwwooooo jQuery(".quote a").text("quote");//替换复制的reply按钮文字为quote jQuery('.quote').click(function() { var atid = '"#' + jQuery(this).parent().attr("id") + '"';//获取评论ID var atname = jQuery(this).parent().find('cite:first').text();//获得作者名称 var quotecontent = jQuery(this).parent().find('.comment-content:first').html();//获得评论内容 jQuery("#comment").attr("value","<a href=" + atid + ">@" + atname + " </a>\n" + "<blockquote><strong>" + atname + ": </strong>" + quotecontent + "</blockquote>\n").focus();//组合成引用 });
有些主题比较特殊,也就是说自定义了评论结构,那么就要根据自个主题修改 jQ 选择器了,不懂可以翻翻 jQuery 手册。
就这样,有兴趣的慢慢折腾。
zww
赏
oooo
or
- 本文标题:点击生成评论引用的jQuery代码
- 本文链接:https://zww.me/archives/25284
- 发布时间:2010年08月28日 10:18
- 版权声明:除非注明,文章均为 zwwooooo 原创,转载请以链接形式标明本文地址!
研究个后台添加 @ 的吧。前后台得一致啊。
@❤•终于° 我不会啊,叫高人研究也说麻烦,慢慢等,总是会有人折腾出来的
@zwwooooo 你的人气好旺。。。
@❤•终于° 不旺吧,都是些朋友撑着
@zwwooooo 一会儿就那么多回复了,哈~
@❤•终于° 折腾的人多,对这题目敏感
等评论多了再去加上
@Max Lee 的确是,评论少得话根本用不到引用
应该不用选择器 :first。
@Alan 嗯,习惯性地加上,而且我不太懂jQ
让俺直接用还行 原理看不懂 代码不明呀!
@秋上书 那就直接用,呵呵
Warning: Undefined array key 1 in /www/wwwroot/zww/zww.me/wordpress/wp-content/plugins/wp-useragent/wp-useragent-detect-webbrowser-version.php on line 32
路过的,不看代码
恩恩
(郁闷的远离了挨踢界。。。)
@爱月 为啥要离开挨踢界?
老佛爷 天方夜谭 小苏苏怎么看不明白也?
@苏扬 囧~
看不懂 瓦咔咔
@Thinkqob 很简单的,哇咔咔
JQ好像很火效果确实很炫
@软件盒子 很少代码就能做出很多效果
想了半天不知道说什么 除了感觉jq好用
@丕子 保持沉默,不要逼着自己说话
看不懂代码只能先在你这里实践一下了。
@益酷网 呵呵,我这很早就有了
在你这里如果我想要引用一个人的评论就必须是对他进行回复,那这两条评论就在一块儿了,还引用干啥。。直接就能相互看到啊。。
而且我点击引用a,再去点击引用B,结果评论框会清空对a的引用。。。
@QiQiBoY 第二层的讨论有时需要,但很少,清空是特意的,单个引用都基本没人用,2个的就基本不会有,玩下而已,一般用不到
这个可以在WordPress3的默认主题改造里试试
@Bee君 应该可以
评论引用?没有用过,回去试试折腾,先备份
@立青 慢慢折腾
引用,我觉得暂时还没必要用这个东东
@yetone 需要者才加
天书...
@赵福安 不会啊,这些是很浅显的
很好,另外,很喜欢这个主题,呵呵:)
@郑永 我也喜欢这个主题,呵呵
有时会用得到,如果是读书类的博客这个功能应该会很喜欢
@Firm 嗯,偶尔,还是加上,反正jq库都已经挂上无所谓了
@大智若鲁 下次扔spam列表
博主也太专业了,深入折腾啊。
@如水 没,这些是jQ的简单应用,太深入不行
我刚折腾出一个牙博士博客,呵呵~
@huangjun 精力旺盛啊,我一个博客就文囧