找回密码
 加入我们

QQ登录

只需一步,快速开始

搜索
查看: 4016|回复: 29

[软件及汉化] 【修正错误】【找回巨硬的感觉】修改justinput切换方式为先shift再空格,方便单手操作

[复制链接]
发表于 2011-5-3 08:58 | 显示全部楼层 |阅读模式
替换mojo.js中justinput的hack代码:
  1. // justinput hack start/ C! ^0 w6 G# i0 c: L" ^  L3 |
  2. window.addEventListener('load', loadingScript, false);
    : Q7 e. Y8 o. f. m1 i# I
  3. function loadingScript() {
    ) k8 A! v( ?% p  h) S8 W& D
  4.         loadJS('ime');! s! |" T; ^0 M+ P8 t- a: a5 a
  5.         loadCSS();
    # A4 i. b) L: j9 a: B6 P4 O8 u
  6.         if (typeof(Mojo.Service) == "undefined") {+ F( S7 {0 v4 _. h; N
  7.                 loadJS('service');0 I4 y6 u7 d/ d
  8.         }
    / ^% H# K& p& Z1 e9 T
  9. }+ Q" e+ N( L8 z7 {+ S; J1 h

  10. ! I  s; q- D! y
  11. var timePress = 0;. M( E+ v2 @8 S# k1 t4 q( j. r
  12. var ime = undefined;
    7 a8 |, E  O6 s7 r0 I. \3 c2 R, r
  13. var orange = false;
    ; [- z8 K, u7 _& T/ X( [
  14. document.onkeydown = function(event) {
    5 a" @" V% R3 n  @' O
  15.     if(event.keyCode == 16) {
    & z1 @# }; t3 P% R5 A4 r3 N
  16.         orange = true;
    9 k' a8 r2 X. G( f- G3 E5 j
  17.         } else {) G' Y9 B, y; [2 u5 X. a+ z: T
  18.             if (orange == true && event.keyCode == 32) {
    2 J' p, `% C5 n) q4 r
  19.             if (typeof(ime) == "undefined") {
    - s2 U- i5 v0 o+ U- J
  20.                 ime = new IME(false);' y0 ^% }9 q- L$ [
  21.             } else {
    . Q; U. G. w& u" p1 }9 M3 y
  22.               ime.toggleIme();
    " U9 S3 f0 |  B; E7 [4 V$ W- \2 d
  23.             }5 k7 T! R! E" X& W5 o4 L
  24.                 event.returnValue = false;
    5 y  ^8 ]. g& e1 d( @$ B
  25. / /               orange=false;
    % H0 E$ h2 W8 \& g+ X! ~2 u
  26.         }  T2 j7 e1 Z! L) |2 a, N
  27. // orange=false应该放在这里
      v/ Z' v) E6 ^
  28.          orange=false;   M9 s4 i' |+ d) P7 O( J
  29. }
    ) H( ?- O6 N( L+ W+ r
  30. }3 x( T2 V) X" `: D0 u
  31. //document.onkeyup = function(event) {3 m* U/ Y+ `" j* L8 g' {
  32. //    if(event.keyCode == 129) {
    * a1 D+ A" f% m" C% j2 S$ B
  33. //        orange = false;
    ) I) \( z- V" O' E& {  P
  34. //    }* V9 e  }- ?7 f
  35. //}
    & V6 }8 v9 i' w" A0 C% ?6 S
  36. % L% g5 k9 ]: R  A+ `$ b, ^0 N
  37. function loadJS(name) {
    1 c4 Q  K, P! X8 B2 z" e
  38.         var element = document.createElement('script');" M$ S2 @9 T- y$ L) G
  39.         element.setAttribute('src', '/usr/palm/frameworks/mojo/justinput/' + name + '.js');9 h: K/ k, @% N* H
  40.         element.setAttribute('type', 'text/javascript');. c, Q: D6 Z/ B% r$ e) e
  41.         document.body.appendChild(element);
    4 X* P% |1 t  \' v& Y% R, L" q
  42. }  b* H, ^5 ~4 w  z- ^

  43. + D: ~* T$ H9 a9 ]# w6 u
  44. function loadCSS() {8 f$ C! s0 K. B- r
  45.         element = document.createElement('link');: n/ R: i* e  J
  46.         element.setAttribute('href', '/usr/palm/frameworks/mojo/justinput/canvas.css');8 x+ r4 F2 M% t& X! x* e0 G# O& z
  47.         element.setAttribute('rel', 'stylesheet');/ n& j. P6 j0 Y- `8 m! ~, ?
  48.         element.setAttribute('type', 'text/css');5 O" J6 I5 N* b3 [# s7 i, S0 J& |
  49.         document.getElementsByTagName('head').item(0).appendChild(element);
    0 L5 q) E4 @4 Z$ T) Q
  50. }+ w/ G2 k, d2 W1 N; g
  51. & a# e! U. k' z- U; X$ k8 l
  52. function cleanTimer() {$ k1 {( N+ d' c7 x
  53.         timePress = 0;* l- T2 k% v3 x
  54. }' n) o! x, b- B* J: k" e' {
  55. // justinput hack end
复制代码
如果你mojo.js中没有其他hack代码,可以直接替换mojo.js
' f& ]: A. O. P) I" q8 H
; Y/ R$ G: H% ?  Q: borange=false语句用错地方了,自己用internalz改一下吧,附件没有更新3 t) d' {' p2 |' \

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入我们

×

评分

参与人数 2威望 +20 收起 理由
寂夜清风 + 10 支持
binggz + 10 谢谢分享

查看全部评分

回复

使用道具 举报

发表于 2011-5-3 09:23 | 显示全部楼层
这个要顶一下
回复 支持 反对

使用道具 举报

发表于 2011-5-3 09:26 | 显示全部楼层
谢谢分享
回复 支持 反对

使用道具 举报

发表于 2011-5-3 13:01 | 显示全部楼层
是替换/usr/palm/frameworks/mojo/mojo.js吗
回复 支持 反对

使用道具 举报

发表于 2011-5-3 13:07 | 显示全部楼层
是根据修改了事件监听的方法来改的吗?
回复 支持 反对

使用道具 举报

发表于 2011-5-3 18:41 | 显示全部楼层
这个要顶
6 `+ v5 J' a+ Y3 @! V
回复 支持 反对

使用道具 举报

发表于 2011-5-3 19:46 | 显示全部楼层
高!!
回复 支持 反对

使用道具 举报

发表于 2011-5-3 20:59 | 显示全部楼层
不是有现成的双击手势区么……单手操控直接打这个补丁不是更快?
回复 支持 反对

使用道具 举报

发表于 2011-5-3 21:05 | 显示全部楼层
不用这么麻烦的,js不是有个长按shift调用输入法的补丁么?误导大家啊
回复 支持 反对

使用道具 举报

 楼主| 发表于 2011-5-4 00:08 | 显示全部楼层
eliotlyn 发表于 2011-5-3 13:01 , w& w- H7 o9 F9 [3 g6 ~
是替换/usr/palm/frameworks/mojo/mojo.js吗
5 I, Z. U' g  W
是的。。。。。。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2011-5-4 00:12 | 显示全部楼层
长按太慢,双击手势区有时会失灵,这是650时代形成的习惯,shift+空格,方便单手操作
回复 支持 反对

使用道具 举报

 楼主| 发表于 2011-5-4 00:15 | 显示全部楼层
yantaixuxu 发表于 2011-5-3 13:07
7 \: B! n5 M" L3 y是根据修改了事件监听的方法来改的吗?

  1. 6 Q) I  ]1 q8 Q1 `
  2. document.onkeydown = function(event) {
    9 a: _0 N" J! Y; B7 J
  3.     if(event.keyCode == 16) {! M$ P9 j" S8 j# A& `  p! M# M
  4.         orange = true;  v7 O- ~+ q1 a5 v2 [8 \
  5.         } else {
    ! j0 e. ]; e6 u- r# ?  m
  6.             if (orange == true && event.keyCode == 32) {
    1 u# m. f1 ~' m) F4 ^" D* e+ }" A
  7.             if (typeof(ime) == "undefined") {
    3 h& R2 y' t8 b" q9 |
  8.                 ime = new IME(false);
    4 \4 ?! V- f' {
  9.             } else {) N# p9 r& ~: O/ n3 Y
  10.               ime.toggleIme();2 l$ M( }' v: M- n
  11.             }
    + E+ E  _8 p6 S9 p0 D  a8 F
  12.                 event.returnValue = false;) f5 H0 u; X3 s1 Q
  13.                 orange=false;
    1 E8 s2 d/ v9 e5 e- J
  14.         }( \8 k; b; ]- ^, i2 Q3 J
  15. }
    - ]. V$ W: i2 Y( e* F5 X+ v
  16. }
    ' P0 F- D2 l$ `4 c4 B% f
  17. //document.onkeyup = function(event) {
    ' G9 n! a0 n: G% n6 ^6 O# K
  18. //    if(event.keyCode == 129) {
    $ ^6 h: h: G4 F) s4 M0 X7 D7 y0 r
  19. //        orange = false;
    9 Q+ q& J  K+ D: o. ]- m- x
  20. //    }
    ' |* X& |0 y3 `) b" ?
  21. //}
复制代码
修改的是这部分,其实就是改一下onkeydown事件中的逻辑关系,然后把onkeyup事件禁用掉
回复 支持 反对

使用道具 举报

发表于 2011-5-4 00:47 | 显示全部楼层
回复 ayang 的帖子- [3 D' c0 [  c/ V# l5 B

. p: D2 Z1 X; K* p  j& Z5 Mshift + 空格不是要两个手吗? 怎么就方便单手了?
回复 支持 反对

使用道具 举报

发表于 2011-5-4 08:47 | 显示全部楼层
个人也觉得手势区双击比较方便。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2011-5-4 10:32 | 显示全部楼层
本帖最后由 ayang 于 2011-5-4 10:33 编辑
( ?$ v. e- {7 ^
' u- W2 A3 Y' r) N: }% y* _回复 netrich 的帖子
. c3 r+ |9 {" u- e- G5 c1 O
# t3 L# |3 b9 l' W看贴不仔细,是可以先按shift,再按空格,不用同时按
回复 支持 反对

使用道具 举报

 楼主| 发表于 2011-5-4 10:34 | 显示全部楼层
回复 tobbyful 的帖子& T* n; N3 y5 b4 I. \; B8 k3 v
6 [: y: g5 c  n  V2 A! {
手势区双击,你就没碰到过失灵的情况吗?双击的时候心里总没底
回复 支持 反对

使用道具 举报

发表于 2011-5-4 15:37 | 显示全部楼层
ayang 发表于 2011-5-4 10:34
+ _4 J9 t2 m! J0 j9 s+ a回复 tobbyful 的帖子
% M! t# E% ^! y1 ?" m6 R2 ]" r# y2 l1 J- B# b& `& E. j
手势区双击,你就没碰到过失灵的情况吗?双击的时候心里总没底

$ W) Z7 ?; |3 X* }: h) w看到绿色的点亮了就好了啊。。。为什么没有底呢?不过你很强!!!偶只是伸手党!佩服你
回复 支持 反对

使用道具 举报

 楼主| 发表于 2011-5-4 15:41 | 显示全部楼层
有时候会点不亮啊
回复 支持 反对

使用道具 举报

发表于 2011-5-4 17:22 | 显示全部楼层
搞定啦,多谢
回复 支持 反对

使用道具 举报

发表于 2011-5-4 20:53 | 显示全部楼层
还是要支持楼主的工作的。。。毕竟动手为王。。。
回复 支持 反对

使用道具 举报

发表于 2011-5-4 21:00 | 显示全部楼层
此方法不知道能不能用在艾薇输入法上呢,已经用习惯爱微输入法了
回复 支持 反对

使用道具 举报

发表于 2011-5-4 21:13 | 显示全部楼层
不能只按shift就切换中英文吗?
# T- ~" }7 E& O650用梅花的飘过……
回复 支持 反对

使用道具 举报

 楼主| 发表于 2011-5-4 21:14 | 显示全部楼层
苏州超人 发表于 2011-5-4 21:13
2 [! ]4 @& S" u' u! g不能只按shift就切换中英文吗?1 c' k" w2 O$ T3 A
650用梅花的飘过……

# Y0 D) `9 d  P只按shift,那你要输入大写英文怎么办
回复 支持 反对

使用道具 举报

 楼主| 发表于 2011-5-4 21:15 | 显示全部楼层
ohjust 发表于 2011-5-4 21:00 & c8 O1 Z5 a4 M. e
此方法不知道能不能用在艾薇输入法上呢,已经用习惯爱微输入法了

  ?4 l& \$ n7 P+ u7 f, P应该不行吧
回复 支持 反对

使用道具 举报

发表于 2011-5-4 21:37 | 显示全部楼层
ayang 发表于 2011-5-4 21:14 - N+ R8 S" R( N5 ^
只按shift,那你要输入大写英文怎么办

% d* y% f& E2 t) [7 k& }输入大写英文按两下shift啊
回复 支持 反对

使用道具 举报

 楼主| 发表于 2011-5-4 23:36 | 显示全部楼层
按两下,不就是关闭输入法了啊,改成sym键到是可以
回复 支持 反对

使用道具 举报

头像被屏蔽
发表于 2011-5-15 22:46 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

 楼主| 发表于 2011-5-16 10:37 | 显示全部楼层
用原来双击手势区的补丁,然后把键值改成17就可以了
回复 支持 反对

使用道具 举报

发表于 2011-10-14 19:59 | 显示全部楼层
来自d版带着爱来帮顶一下 修改成功
回复 支持 反对

使用道具 举报

发表于 2011-11-6 22:55 | 显示全部楼层
我的mojo.js中有其他的hack代码,怎么办
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 加入我们

本版积分规则

QQ|Archiver|手机版|小黑屋|吹友吧 ( 京ICP备05078561号 )

GMT+8, 2025-3-31 15:23 , Processed in 0.288167 second(s), 18 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表