Changeset 2211


Ignore:
Timestamp:
Feb 15, 2008, 11:10:45 PM (16 years ago)
Author:
rvelices
Message:

enhance keyboard navigation on picture page (first,last,thumbs)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/template/yoga/picture.tpl

    r2205 r2211  
    230230
    231231<script type="text/javascript">
     232function keyboardNavigation(e)
     233{
     234        if(!e) var e=window.event;
     235        if (e.altKey) return true;
     236        var target = e.target || e.srcElement;
     237        if (target && target.type) return true; //an input editable element
     238        var keyCode=e.keyCode || e.which;
     239        var docElem = document.documentElement;
     240        switch(keyCode) {
    232241<!-- BEGIN next -->
    233 var nextUrl = "{next.U_IMG}".replace( "&amp;", "&" );
     242                case 63235: case 39: if (e.ctrlKey || docElem.scrollLeft==docElem.scrollWidth-docElem.clientWidth ){window.location="{next.U_IMG}".replace( "&amp;", "&" ); return false; } break;
    234243<!-- END next -->
    235244<!-- BEGIN previous -->
    236 var prevUrl = "{previous.U_IMG}".replace( "&amp;", "&" );
     245                case 63234: case 37: if (e.ctrlKey || docElem.scrollLeft==0){ window.location="{previous.U_IMG}".replace("&amp;","&"); return false; } break;
    237246<!-- END previous -->
    238 function keypress(e)
    239 {
    240     if(!e) var e=window.event;
    241     if (e.altKey) return true;
    242     var target = e.target || e.srcElement;
    243     if (target && target.type) return true; //an input editable element
    244     var keyCode=e.keyCode || e.which;
    245     var docElem = document.documentElement;
    246     switch(keyCode) {
    247         case 63235: case 39: if (nextUrl && (e.ctrlKey || docElem.scrollLeft==docElem.scrollWidth-docElem.clientWidth) ){window.location=nextUrl; return false; } break;
    248         case 63234: case 37: if (prevUrl && (e.ctrlKey || docElem.scrollLeft==0) ){ window.location=prevUrl; return false; } break;
    249     }
    250     return true;
     247<!-- BEGIN first -->
     248                /*Home*/case 36: if (e.ctrlKey){window.location="{first.U_IMG}".replace("&amp;","&"); return false; } break;
     249<!-- END first -->
     250<!-- BEGIN last -->
     251                /*End*/case 35: if (e.ctrlKey){window.location="{last.U_IMG}".replace("&amp;","&"); return false; } break;
     252<!-- END last -->
     253                /*Up*/case 38: if (e.ctrlKey){window.location="{U_UP}".replace("&amp;","&"); return false; } break;
     254        }
     255        return true;
    251256}
    252 document.onkeydown = keypress;
     257document.onkeydown=keyboardNavigation;
    253258</script>
Note: See TracChangeset for help on using the changeset viewer.