手机版

用jQuery在WordPress中实现Ctrl回车和@评论回复

时间:2021-10-30 来源:互联网 编辑:宝哥软件园 浏览:

添加Ctrl输入快速回复。这里有两种方法。首先是jQuery方法。我学习jQuery有一段时间了,所以对jQuery方法比较熟悉。如果你的主题已经加载了jQuery库,我建议你使用下面的方法。

将这段代码添加到js文件中。如果已经加载了jQuery,现在可以使用Ctrl Enter快速回复。

Jquery(文档)。ready(函数($) {//ctrl输入对jquery(文档)的回复。keypress (function (e) {if (e. ctrl键e .哪个==13 | | e .哪个==10) {jquery ('# comment form ')。提交。} })});解释代码。在chrome等现代浏览器中,js使用e . what==13来判断Enter,在ie6中,js使用e . what==10来判断Enter。

另一种方法:在comments.php找到类似下面的代码(即注释框的代码)。

text area name=' comment ' id=' comment ' rows=' 10 ' cols=' 50 ' tabindex=' 4 '/text area替换为以下代码:

text area name=' comment ' id=' comment ' rows=' 10 '?cols='50 '?tabindex=' 4 ' onkeydown=' if(event . ctrlkeyevent . key code==13 | | Keyevent . key code==10){ document . getelementbyid(' submit ')。单击();返回false };”/textarea

实现Ctrl Enter快速回复的原理和jQuery版本类似,这里就不详细解释了。

实现回复时用“@”回复@的功能,大家应该都很熟悉。在微博中,论坛上可以看到“@”,甚至腾讯的Qzone也增加了@回复的功能。确实,“@ reply”让回复对象更清晰,对于多次回复的效果更明显。

但是WordPress的评论模板没有这个功能,需要手动添加。其实这个功能在WordPress中已经变得比较流行了,很多话题都有这个功能,实现的原理也多种多样。在本文中,我介绍了jQuery实现的方法,因为网上流传的大多数文章都直接给出了jQuery代码。没有详细的解释,不同的网站也不一定有相同的DOM,所以不熟悉jQuery的童鞋在使用jQuery实现“@回复”时可能会出现各种问题。

1.加载jQuery库,可以直接使用谷歌的。

2.jQuery代码,可以直接放入js文件。

Jquery(文档)。ready(函数($) {$(')。语句-回复-链接')。点击(function(){//获取回答者的id varatid=' ' # ' $(this)。父项()。父项()。attr ('id ')。//在name=$ (this)处获取昵称var。父项()。查找('。statement _ author’)。text();$('#comment ')。attr('value ',' a href=' atid '@' atname ' /a ')。焦点();});$('#cancel-comment-reply a ')。单击(function() {$('#comment '))。attr('value ',' ');});});3.解释jQuery代码。

在“@ reply”的实现中,关键是获取待回复对象的id和昵称,因此定义了atid和atname两个量,分别存储待回复对象的id和昵称。当用户点击时。comment-reply-link用鼠标,jQuery会在两个级别获取其父元素的id属性,并保存在quantity atid中。然后,它会寻找。在父元素的子元素中添加comment_author,获取其内容并保存在atname中。也许上面的描述很难理解。下面用图片来解释一下吧!

要获取用户id,我们首先需要知道注释部分的DOM结构。以Melody为例,使用Firebug查看一个评论的部分HTML。

2016521112857945.png  (383166)

看完图,相信童鞋们应该大致了解了。的父元素。comment-reply-link包含应答者的id,因此您可以在这里获得应答者的id,而。注释-回复-链接包含用户的昵称。看到这一点,相信童鞋阅读上面的jQuery代码并不难。

首先要知道我们的评论模板哪里有输出回答者的id和输出回答者的昵称,然后使用jQuery的选择器获取相关数据。

版权声明:用jQuery在WordPress中实现Ctrl回车和@评论回复是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。