OSDN Git Service

Event設定をクラス分け。あと、不要な記述を削除
authortnantoka <bornneet@livedoor.com>
Wed, 23 Sep 2009 05:08:15 +0000 (14:08 +0900)
committertnantoka <bornneet@livedoor.com>
Wed, 23 Sep 2009 05:08:15 +0000 (14:08 +0900)
jquery.tagget.js
tagget.css

index 7a21aae..264e24b 100644 (file)
@@ -19,9 +19,6 @@
         */
        var Suggester = {
        
-               // 入力データを利用した補完を行うか
-               byInputs: true,
-
                keywords: {     
                
                        html: (function() {
                        return cookie;
                },
 
+               // 入力データを利用した補完を行うか
                checkIntelli: function(t) {
                        var intelli = $(t).parents('.tagget_wrapper')
                                .find('.tagget_intelli input').attr('checked');
        
        };
 
-
     /* ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- */
-       // tagget初期化
-       var init = function(t, i) {
+       /**
+        * textareaのEventに設定する関数群
+        */
+       Event = {
        
-               // 被らないコードを振る
-               while ($('textarea').is('.tagget_' + i)) {
-                       i = '0' + i;
-               }
-               $(t).addClass('tagget_' + i);
-
-               Wrapper.wrap(t);
-               Wrapper.absolutes(t);
-
-//             setTimeout(function() {
-//             
-//             });
-
-               // イベント設定
-
-               // keyup(発生タイミングが一番少ない)で候補表示
-               $(t).keyup(function(e) {
+               // keyupは発生タイミングが一番少ない
+               // 候補表示に使用
+               keyup: function(e) {
+               
+                       var t = this;
                
                        // 十字キー、Enterの時は補完を表示しない
                        if(!(37 <= e.which && e.which <= 40) && !(e.which == 13)) {
                                Wrapper.showPopup(t);
-                       } else if(e.which == 37 || e.which == 39) {
+                               
+                       } 
+                       // 左右キーで補完を非表示化
+                       else if(e.which == 37 || e.which == 39) {
                                Wrapper.getPopup(t).hide();
                        }
                        
                        Wrapper.setLine(t);
-               })
-
-               // 入力キーに応じた処理               
-               .keydown(function(e) {
+               }, 
+               
+               // 入力内容に応じた処理はdownで
+               // press,upだとおかしくなるものもこっちで
+               keydown: function(e) {
+               
+                       var t = this;
                
                        // タブキャンセル
                        // keydown以外だとうまくいかない
                        }
 
                        // Shift+Enterで改行 or <br />入力
-                       // 補完却下も可能
                        if (e.shiftKey && e.which == 13) {
 
                                var n = '\n';
-//                             if (!Wrapper.isPopup(t) && Wrapper.checkType(t, 'html')) {
                                if (Wrapper.checkType(t, 'html')) {
                                        n = '<br />';
                                }
                                Cursor.insert(t, n);
                                
+                               // 補完処理終了。
+                               // 以下同様で後続処理は行わない
                                return false;
                        }
 
                        
                        }
 
-               });
+               }
+       
+       };
+
+
+    /* ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- */
+       // tagget初期化
+       var init = function(t, i) {
+       
+               // 被らないコードを振る
+               while ($('textarea').is('.tagget_' + i)) {
+                       i = '0' + i;
+               }
+               $(t).addClass('tagget_' + i);
+
+               Wrapper.wrap(t);
+               Wrapper.absolutes(t);
+
+               // イベント設定
+
+               // keyup(発生タイミングが一番少ない)で候補表示
+               $(t).keyup(Event.keyup)
+
+               // 入力キーに応じた処理               
+               .keydown(Event.keydown);
 
                // 最初に1回だけ呼び出し。
                var data = Cookie.load(Wrapper.getId(t));
index 65b0aca..1eca961 100644 (file)
@@ -39,7 +39,7 @@ div.tagget_toolbar p.tagget_type {
        padding-bottom: 3px;
 }
 
-/* cookieのフォント調整 */
+/* selectラベルのフォント調整 */
 div.tagget_toolbar p.tagget_intelli,
 div.tagget_toolbar p.tagget_cookie {
        border-right: none;
@@ -74,9 +74,6 @@ div.tagget_toolbar p.tagget_replace img {
 }
 
 /* main */
-p.tagget_main {
-}
-
 p.tagget_main textarea {
        font-family: monospace;
        width: 99%;