阅读:48290回复:60
关于Firefox不能使用ctrl+enter在某些论坛发贴的原因
看到很多人抱怨Firefox不能使用ctrl+enter发贴,开始还以为这是一个IE为textarea增加的快捷键,做了几个test case试了以后才知道这并不是IE的功能.
很多报这个问题的人使用的是Dvbbs,找到Dvbbs的代码一看才知道这是Dvbbs自己实现的一个功能.在实现这个功能的时候,对IE和非IE浏览器做了不同的处理.看代码: if (Dvbbs_bIsIE5){ var Dvbbs_bodyTag="<style type=text/css>.quote{margin:5px 20px;border:1px solid #CCCCCC;padding:5px; background:#F3F3F3 }\nbody{boder:0px}.HtmlCode{margin:5px 20px;border:1px solid #CCCCCC;padding:5px;background:#FDFDDF;font-size:14px;font-family:Tahoma;font-style : oblique;line-height : normal ;font-weight:bold;}\nbody{boder:0px}</style></head><BODY bgcolor=\"#FFFFFF\" title=\"Ctrl+Enter直接提交贴子\" onkeydown=\"ctlent();\">"; }else { var Dvbbs_bodyTag="<style type=text/css>.quote{margin:5px 20px;border:1px solid #CCCCCC;padding:5px; background:#F3F3F3 }\nbody{boder:0px}.HtmlCode{margin:5px 20px;border:1px solid #CCCCCC;padding:5px;background:#FDFDDF;font-size:14px;font-family:Tahoma;font-style : oblique;line-height : normal ;font-weight:bold;}\nbody{boder:0px}</style></head><BODY bgcolor=\"#FFFFFF\">"; } 在为IE实现的代码部分多了一个事件处理 onkeydown=\"ctlent();\" 而为非IE浏览器就没有. 再看这个事件处理调用的函数: function ctlent(){ var ispost=0; if (document.all) { if(event.ctrlKey && event.keyCode==13) { Dvbbs_CopyData('Body') Checkdata() if (ischeck==true){this.document.Dvform.submit();} } } } 就是处理ctrl+enter提交表单的. 好了,结论就有了.这并不是一个兼容性的问题,因为论坛根本就没有为非IE浏览器实现这个功能. |
|
1楼#
发布于:2005-04-08 16:48
嗯收藏了哦,
|
|
|
2楼#
发布于:2005-04-08 16:48
最喜欢PHPWIND
|
|
3楼#
发布于:2005-04-08 16:48
我也用kis 也有这种情况
难道真的是 kis 的原因? |
|
4楼#
发布于:2005-04-08 16:48
我已经实现在Firefox下面用Ctrl+Enter提交表单~
|
|
5楼#
发布于:2005-04-08 16:48
要不要把那串代码往动网官方砸,再骂他几句
最后逼迫他发补丁 |
|
|
6楼#
发布于:2005-04-08 16:48
|
|
|
7楼#
发布于:2005-04-08 16:48
|
|
8楼#
发布于:2005-04-08 16:48
|
|
9楼#
发布于:2005-04-08 16:48
我来试试看Alt+S的功力^_^
|
|
10楼#
发布于:2005-04-08 16:48
谢谢了,我在动网上发了几个帖子也没人回答,原来是这回事,自己写一个算了.
|
|
12楼#
发布于:2005-04-08 16:48
firefox_userA:呵呵,大家完全不用为这个问题费心。事实上我们有更好的解决办法:GreaseMonkey+CtrlEnter.user.js 呵呵~~我本来还准备写一个userscript,应该比较简单的,现在也不用写了. |
|
13楼#
发布于:2005-04-08 16:48
动网实在是太滥了,但还不得不去那个DVBBS的论坛,这是俺用FF的痛苦啊~!!
|
|
14楼#
发布于:2005-04-08 16:48
呵呵,大家完全不用为这个问题费心。事实上我们有更好的解决办法:GreaseMonkey+CtrlEnter.user.js
http://clear.com.ua/misc/ctrl_enter_submits.user.js Allows submitting of forms with Ctrl+Enter. Replaces quotes with pairs, (c) with sign, etc, understands wiki formatting. 这样在所有表单中输入时,都可以Ctrl+Enter提交了。 |
|
上一页
下一页