Changeset 32754 for websites/modoki

Show
Ignore:
Timestamp:
04/23/09 16:44:16 (6 years ago)
Author:
drry
Message:
  • 整理。
Files:
1 modified

Legend:

Unmodified
Added
Removed
  • websites/modoki/index.html

    • Property svn:mime-type set to text/html; charset=UTF-8
    r32748 r32754  
    99        padding: 0; 
    1010      } 
    11       html,body { 
     11      html, body{ 
    1212        height: 100%; 
    1313      } 
     
    3131        background: #999999; 
    3232        height: 25px; 
    33         top:0; 
     33        top: 0; 
    3434      } 
    3535      #header_content{ 
     
    5050        height: 50px; 
    5151        background: #f6f6f6; 
    52         border: #aaa 1px solid; 
     52        border: 1px solid #aaa; 
    5353      } 
    5454      #userInput{ 
     
    5858        width: 100%; 
    5959        height: 100%; 
    60         border: #aaa 1px solid; 
     60        border: 1px solid #aaa; 
    6161        background: #ffffff; 
    6262      } 
     
    6666      } 
    6767      .blocked{ 
    68         border : 1px solid #00f; 
     68        border: 1px solid #00f; 
    6969      } 
    7070      .noborder{ 
    71         border : none; 
     71        border: 0 none; 
    7272      } 
    7373      .unread{ 
     
    9595    </style> 
    9696    <script type="text/javascript"> 
    97       var d=document; 
     97      var d = document; 
    9898 
    9999      var content_load = function(){ 
    100100        var modoki = new Modoki(); 
    101       } 
     101      }; 
    102102      var Modoki = function(){ this.init(); }; //constractor 
    103103      Modoki.prototype.init = function(){ 
     
    109109        var loop = setInterval( function(){ _self.loadData(); }, 30000 ); 
    110110      }; 
    111        
     111 
    112112      Modoki.prototype.config = function(){ 
    113113        var _self = this; 
     
    117117          "s" : function(){ _self.fav(); }, 
    118118          "e" : function(){ _self.open_url(); } 
    119         } 
     119        }; 
    120120        this._altanative = (new Date).getTime(); 
    121121        this._crosspost = 0; 
    122       } 
     122      }; 
    123123      Modoki.prototype.loadKeyBind = function(){ 
    124124        var _self = this; 
     
    127127          if( t.nodeType == 1 ){ 
    128128             var tn = t.tagName.toLowerCase(); 
    129              if( tn == 'input' || tn == 'textarea' ){ 
     129             if( tn == "input" || tn == "textarea" ){ 
    130130                 return; 
    131131             } 
     
    136136             } 
    137137          } 
    138         } 
     138        }; 
    139139        document.addEventListener("keypress", keybind, false); 
    140140      }; 
     
    150150        var box = d.createElement("div"); 
    151151        box.id = "main_content"; 
    152         var _tilme_line= d.createElement("ul"); 
     152        var _tilme_line = box.appendChild(d.createElement("ul")); 
    153153        _tilme_line.id = "time_line"; 
    154         box.appendChild(_tilme_line); 
    155154        document.getElementById("content").appendChild(box); 
    156155 
     
    160159 
    161160        //output 
    162         var _out = d.createElement("div"); 
     161        var _out = f_cont.appendChild(d.createElement("div")); 
    163162        _out.id = "out"; 
    164163        _out.name = "out"; 
    165         f_cont.appendChild(_out); 
    166164 
    167165        //input 
    168         var _userInput = d.createElement("div"); 
     166        var _userInput = f_cont.appendChild(d.createElement("div")); 
    169167        _userInput.id = "userInput"; 
    170168        _userInput.name = "userInput"; 
    171169 
    172         var _multiple = d.createElement("textarea"); 
     170        var _multiple = _userInput.appendChild(d.createElement("textarea")); 
    173171        _multiple.id = "multiple"; 
    174172        _multiple.name = "multiple"; 
    175         _userInput.appendChild(_multiple); 
    176173 
    177174        _multiple.addEventListener("keypress", function(e){ 
     
    180177              _self.postTwitter(); 
    181178              this.blur(); 
    182             }else if( e.which == 9) { //if tab 
     179            }else if( e.which == 9){ //if tab 
    183180              e.preventDefault(); 
    184181              this.blur(); 
     
    187184        }, false ); 
    188185 
    189         f_cont.appendChild(_userInput); 
    190186        document.getElementById("footer").appendChild(f_cont); 
    191  
    192       } 
     187      }; 
    193188      Modoki.prototype.down = function(){ 
    194189        this.move(true); 
    195       } 
     190      }; 
    196191      Modoki.prototype.up   = function(){ 
    197192        this.move(false); 
    198       } 
     193      }; 
    199194      Modoki.prototype.move = function(flg){ 
    200         var diff= (flg) ? 1 : -1; 
     195        var diff = flg ? 1 : -1; 
    201196 
    202197        var check = d.getElementsByClassName("blocked"); 
     
    210205            if( nt[i].className.indexOf("blocked") != -1 ){ 
    211206              d.getElementById("out").innerHTML = nt[i+diff].innerHTML; 
    212               nt[i].className = nt[i].className.replace(/(blocked|unread)/,"noborder"); 
    213               nt[i+diff].className = nt[i+diff].className.replace(/(noborder|unread)/,"blocked read"); 
     207              nt[i].className = nt[i].className.replace(/blocked|unread/,"noborder"); 
     208              nt[i+diff].className = nt[i+diff].className.replace(/noborder|unread/,"blocked read"); 
    214209              var scroll = (nt[i+diff].offsetHeight-2) * diff; 
    215210              window.scrollBy(0, scroll); 
     
    218213          } 
    219214        } 
    220       } 
     215      }; 
    221216 
    222217      Modoki.prototype.postTwitter = function(){ 
     
    224219        text = (text.length>140) ? text.substring(0,140) : text; 
    225220        if( text.length != 0 ){ 
    226           var url = 'http://twitter.com/statuses/update.xml?status=' + encodeURIComponent(text) + '&source=modoki'; 
     221          var url = "https://twitter.com/statuses/update.xml?status=" + encodeURIComponent(text) + "&source=modoki"; 
    227222          this.crossDomainPost(url); 
    228223        } 
    229224        d.getElementById("multiple").value = ""; 
    230       } 
     225      }; 
    231226 
    232227      Modoki.prototype.fav = function(){ 
    233228        var t = d.getElementsByClassName("blocked"); 
    234         var url = "http://twitter.com/favourings/create/" + t[0].id + ".xml"; 
     229        var url = "https://twitter.com/favourings/create/" + t[0].id + ".xml"; 
    235230        this.crossDomainPost(url); 
    236231        t[0].className += " fav"; 
    237       } 
     232      }; 
    238233 
    239234      Modoki.prototype.open_url = function(){ 
     
    241236        var m = t[0].innerHTML.match(/https?:\/\/[-_.!~*'()a-zA-Z0-9;/?:@&=+$,%#]+/g); 
    242237        if( m.length > 1 ){ window.open(m[1]); } 
    243       } 
     238      }; 
    244239 
    245240      Modoki.prototype.crossDomainPost = function( url ){ 
    246241        this._crosspost++; 
    247         var iframe = document.createElement('iframe'); 
    248         iframe.name = 'cross_domain_post' + this._crosspost; 
    249         iframe.style.display = 'none'; 
    250  
    251         var form = document.createElement('form'); 
     242        var iframe = document.createElement("iframe"); 
     243        iframe.name = "cross_domain_post" + this._crosspost; 
     244        iframe.style.display = "none"; 
     245 
     246        var form = document.createElement("form"); 
    252247        form.action = url; 
    253         form.target = 'cross_domain_post' + this._crosspost; 
    254         form.method = 'POST'; 
    255         form.style.display = 'none'; 
     248        form.target = "cross_domain_post" + this._crosspost; 
     249        form.method = "post"; 
     250        form.style.display = "none"; 
    256251        document.body.appendChild(form); 
    257252 
     
    266261        }; 
    267262        document.body.appendChild(iframe); 
    268       } 
     263      }; 
    269264 
    270265      Modoki.prototype.loadData = function(){ 
    271266        this._altanative++; 
    272         var url = "http://twitter.com/statuses/friends_timeline.json?callback=cb" + "&alter=" + this._altanative;    
     267        var url = "https://twitter.com/statuses/friends_timeline.json?callback=cb" + "&alter=" + this._altanative; 
    273268        this.getJSON(url); 
    274       } 
     269      }; 
    275270      Modoki.prototype.getJSON = function(url){ 
    276         var script = d.createElement("script"); 
     271        var head = d.getElementsByTagName("head")[0]; 
     272        var script = head.appendChild(d.createElement("script")); 
    277273        script.src = url; 
    278         script.type="text/javascript"; 
    279         var head = d.getElementsByTagName("head")[0]; 
    280         head.appendChild(script); 
    281       } 
     274        script.type = "text/javascript"; 
     275      }; 
    282276      var cb = function(data){ 
    283         for( var i=data.length-1; i != 0 ; i-- ){ 
    284           createLiTag(data[i]); 
    285         } 
    286         var _script= d.getElementsByTagName("script"); 
     277        for( var i=data.length; i-->0; createLiTag(data[i]) ); 
     278        var _script = d.getElementsByTagName("script"); 
    287279        _script[_script.length-1].parentNode.removeChild(_script[_script.length-1]); 
    288       } 
     280      }; 
    289281      var createLiTag = function(obj){ 
    290282        //check obj 
    291283        var o = d.getElementById(obj.id); 
    292         if( o != null ){ return };  
     284        if( o != null ){ return }; 
     285 
     286        var tl = document.getElementById("time_line"); 
    293287 
    294288        //create 
    295         var liTag = d.createElement("li"); 
     289        var liTag = tl.insertBefore(d.createElement("li"), null); 
    296290        liTag.id = obj.id; 
    297291        liTag.className = "unread"; 
    298292 
    299         var imgDiv = d.createElement("div"); 
     293        var imgDiv = liTag.appendChild(d.createElement("div")); 
    300294        imgDiv.className = "sub"; 
    301295        imgDiv.id = "user_icon" 
    302296 
    303         var imgTag = d.createElement("img"); 
     297        var imgTag = imgDiv.appendChild(d.createElement("img")); 
    304298        imgTag.src = obj["user"]["profile_image_url"]; 
    305299        imgTag.style.height = "16px"; 
    306         imgTag.style.width= "16px"; 
    307         imgDiv.appendChild(imgTag); 
    308  
    309         liTag.appendChild(imgDiv); 
    310  
    311         var nameDiv = d.createElement("div"); 
     300        imgTag.style.width = "16px"; 
     301 
     302        var nameDiv = liTag.appendChild(d.createElement("div")); 
    312303        nameDiv.appendChild(d.createTextNode(obj["user"]["name"])); 
    313304        nameDiv.className = "sub"; 
    314305 
    315         var textDiv = d.createElement("div"); 
     306        var textDiv = liTag.appendChild(d.createElement("div")); 
    316307        textDiv.appendChild(d.createTextNode(obj.text)); 
    317308        textDiv.className = "sub text"; 
    318  
    319         liTag.appendChild(nameDiv); 
    320         liTag.appendChild(textDiv); 
    321  
    322         var tl = document.getElementById("time_line"); 
    323         tl.insertBefore(liTag, null); 
    324       } 
     309      }; 
    325310    </script> 
    326311  </head>