Changeset 1430

Show
Ignore:
Timestamp:
11/14/07 04:25:41 (6 years ago)
Author:
drry
Message:

websites/coderepos.org/trac/share/js/TracAuthorIcon.js: 10000‰ faster!

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • websites/coderepos.org/trac/share/js/TracAuthorIcon.js

    r1422 r1430  
    22// vim:ft=javascript:expandtab 
    33var TracAuthorIcon = { 
    4     // ここにアイコンの対応を書く(はてなIDまたはURL) 
    54    authorIcons : { 
    6         //'tomoyo' : 'http://www.hatena.ne.jp/users/ma/mayuki/profile_s.gif' 
    7         //'tomoyo' : 'id:mayuki' 
     5        //'tomoyo'     : 'http://www.hatena.ne.jp/users/ma/mayuki/profile_s.gif' 
     6        //'tomoyo'     : 'id:mayuki' 
    87          '*default*'  : 'http://coderepos.org/share/htdocs/default-author-icon.png' 
    98        , 'mayuki'     : 'id:mayuki' 
     
    2120        , 'xcezx'      : 'id:xcezx' 
    2221        , 'nyarla'     : 'id:nyarla-net' 
    23         //, 'hidek'      : '' 
    2422        , 'tokuhirom'  : 'id:tokuhirom' 
    2523        , 'daisuke'    : 'id:lestrrat' 
     
    7674                if (authors.length) 
    7775                    authors[0].parentNode.parentNode.className = "committer-list"; 
    78 //                if (/MSIE 6\.0/.test(navigator.userAgent)) { 
     76//                if (navigator.userAgent.indexOf("Mozilla/4.0 (compatible; MSIE 6.0") >= 0) { 
    7977//                    for (var i = 0, n = authors.length; i < n; i++) { 
    8078//                        authors[i].parentNode.className = "committer-list"; 
     
    133131        } else { 
    134132            authorE = authorEOrArray; 
    135             author = TracAuthorIcon.getText(authorE).replace(/(^\s+|\??\s*$)/g, ''); 
     133            author = TracAuthorIcon.getText(authorE).replace(/^\s+|\??\s*$/g, ''); 
    136134        } 
    137135 
     
    174172        var arrRegExpClassNames = new Array(); 
    175173        if(typeof oClassNames == "object"){ 
    176             for(var i=0; i<oClassNames.length; i++){ 
    177                 arrRegExpClassNames.push(new RegExp("(^|\s)" + oClassNames[i].replace(/-/g, "\-") + "(\s|$)")); 
     174            for(var i = 0, l = oClassNames.length; i < l; i++){ 
     175                arrRegExpClassNames.push(new RegExp("(?:^|\s)" + oClassNames[i] + "(?:\s|$)")); 
    178176            } 
    179177        } 
    180178        else{ 
    181             arrRegExpClassNames.push(new RegExp("(^|\s)" + oClassNames.replace(/-/g, "\-") + "(\s|$)")); 
     179            arrRegExpClassNames.push(new RegExp("(?:^|\s)" + oClassNames + "(?:\s|$)")); 
    182180        } 
    183181        var oElement; 
    184182        var bMatchesAll; 
    185         for(var j=0; j<arrElements.length; j++){ 
    186             oElement = arrElements[j]; 
     183        for(var i = 0, l = arrElements.length; i < l; i++){ 
     184            oElement = arrElements[i]; 
    187185            bMatchesAll = true; 
    188             for(var k=0; k<arrRegExpClassNames.length; k++){ 
    189                 if(!arrRegExpClassNames[k].test(oElement.className)){ 
     186            for(var j = 0, m = arrRegExpClassNames.length; j < m; j++){ 
     187                if(!arrRegExpClassNames[j].test(oElement.className)){ 
    190188                    bMatchesAll = false; 
    191189                    break;