skip-link-focus-fix.js 733 B

12345678910111213141516171819
  1. ( function() {
  2. var is_webkit = navigator.userAgent.toLowerCase().indexOf( 'webkit' ) > -1,
  3. is_opera = navigator.userAgent.toLowerCase().indexOf( 'opera' ) > -1,
  4. is_ie = navigator.userAgent.toLowerCase().indexOf( 'msie' ) > -1;
  5. if ( ( is_webkit || is_opera || is_ie ) && 'undefined' !== typeof( document.getElementById ) ) {
  6. var eventMethod = ( window.addEventListener ) ? 'addEventListener' : 'attachEvent';
  7. window[ eventMethod ]( 'hashchange', function() {
  8. var element = document.getElementById( location.hash.substring( 1 ) );
  9. if ( element ) {
  10. if ( ! /^(?:a|select|input|button|textarea)$/i.test( element.tagName ) )
  11. element.tabIndex = -1;
  12. element.focus();
  13. }
  14. }, false );
  15. }
  16. })();