WordPress中用Ctrl+Enter提交留言
由于某些软件和论坛的缘故,很多时候冰古在blog上写完留言回复后,都习惯性地按下Ctrl+Enter进行提交留言,但基本上是不成功的,很多blog程序都没有加入这样的快捷键。
Discuz等论坛都可以使用快捷键提交发贴和发贴,但因为觉得它们的代码太麻烦,所以一直没有去查找该快捷键的方法。直到有次在百度知道回复时,按下Ctrl+Enter提交竟然成功了,才打开它的源代码查看了下。一看才知道,实现的方法很简单,只需几行javascript就能搞定了。那么我们也在WordPress加上这个快捷键吧:
一、打开模板中的comments.php文件,查找到下面的内容:
<form action="<?php echo get_option('siteurl'); ?>/wp-comments-post.php" method="post" id="commentform" name="commentform">
<?php if ( $user_ID ) : ?>
如果你的form标签中没有name=”commentform”属性,那么请加上。
二、再往下拉一点,你可以看到类似的两行:
<p><textarea name="comment" id="comment" cols="55" rows="10" tabindex="4"></textarea></p>
<p><input type="submit" id="submit" tabindex="5" value="提交留言" /></p>
如果textarea标签上没有id属性,请按照上面的内容加上。如果在第二行中发现name=”submit”,将之删除。
三、最后,在</form>的下面,添加下面的一段javascript代码后保存就行了。
<script type="text/javascript"> var commenttextarea = document.getElementById('comment'); commenttextarea.onKeyDown = quickSubmit(event); function quickSubmit(event){ if (event.ctrlKey && event.keyCode == 13){ document.submitform.submit(); } } </script>
貌似上面这句我搞错了document.submitform.submit();,顺便把代码兼容性弄好点,用上下面的代码,应该没问题了。
<script type="text/javascript">
var commenttextarea = document.getElementById('comment');
commenttextarea.onkeydown = function quickSubmit(e) {
if (!e) var e = window.event;
//alert(e.keyCode);
if (e.ctrlKey && e.keyCode == 13){
//alert('good');
document.getElementById('commentform').submit();
}
};
</script>
试试吧。
BTW:google换了favicon?![]()
供稿种子
September 15th, 2008 at 2:45 am
恭喜恭喜
September 15th, 2008 at 1:55 am
成功了,哈哈
September 6th, 2008 at 3:44 pm
关键是那个submit那个按键不能有name这个属性,我看了你的源代码,发现是有这个属性的。
如果还不行,你可以看一下我的源代码。
如果要发代码,用code标签就可以了
September 6th, 2008 at 11:01 am
上面一条代码消失了一大部分,抱歉不知道怎么在留言里贴代码
September 6th, 2008 at 10:58 am
我的第二部分代码是这样的:
<input type=”hidden” name=”comment_post_ID” value=”" />
会不会有问题?
September 6th, 2008 at 10:50 am
我在自己的blog上修改测试没成功,在你这里试验一下
August 20th, 2008 at 3:16 pm
成功了,不错!@谢谢
August 20th, 2008 at 3:14 pm
试试!
August 3rd, 2008 at 7:07 pm
@phy 这个按照说明来做吧,我看不到你的网页代码那些,我也不知道原因啊。
August 2nd, 2008 at 6:17 pm
天啊!Failed…
这是为什么呢?
这里却可以…Ctrl+Enter…
July 9th, 2008 at 11:45 pm
@花果山寨 你的html代码是怎样的呢?我无法得知你的html代码是怎样的,也就无从知道是什么导致不能使用。
July 9th, 2008 at 2:11 pm
启用了回复插件会不会影响这个功能的实现,我在本地调试没办法实现ctrl+enter 提交
July 9th, 2008 at 1:51 pm
咦!怎么不行呢?我可是按你的说明一步一步弄的哦!
July 9th, 2008 at 1:49 pm
太好了,我试试!
July 5th, 2008 at 7:59 pm
标准不是唯一,适合才是真的。
大家的习惯都是用ctrl+enter,而且这也更顺手。
July 5th, 2008 at 10:05 am
其实标准的应该是ALT+S
感觉使用accesskey属性应该就可以了
July 3rd, 2008 at 3:18 pm
July 3rd, 2008 at 1:47 pm
呵呵,挺不错的,这个有点像QQ了。
July 3rd, 2008 at 12:24 pm
我也试一下
July 2nd, 2008 at 8:59 pm
[...] WordPress中用Ctrl+Enter提交留言。让WordPress的留言框支持使用”Ctrl+Enter”快捷提交留言。 由于某些软件和论坛的缘故,很多时候冰古在blog上写完留言回复后,都习惯性地按下Ctrl+Enter进行提交留言,但基本上是不成功的,很多blog程序都没有加入这样的快捷键。 Discuz等论坛都可以使用快捷键提交发贴和发贴,但因为觉得它们的代码太麻烦,所以一直没有去查找该快捷键的方法。直到有次在百度知道回复时,按下 Ctrl+Enter提交竟然成功了,才打开它的源代码查看了下。一看才知道,实现的方法很简单,只需几行javascript就能搞定了。那么我们也在WordPress加上这个快捷键吧: [...]
June 6th, 2008 at 9:03 am
我也来测试一下
FF3 RC2
June 4th, 2008 at 9:17 pm
用opera测试一下
June 4th, 2008 at 9:09 pm
再次测试一下。
June 2nd, 2008 at 8:47 pm
June 1st, 2008 at 2:35 pm
奇怪了,怎么又不行了。
过两天再搞搞。
June 1st, 2008 at 11:55 am
没有成功
June 1st, 2008 at 11:55 am
试一下,这是个好功能
May 31st, 2008 at 3:03 am
@limkianhui 哈,买域名了。
May 30th, 2008 at 10:51 pm