2
* Functionality specific to Twenty Thirteen.
4
* Provides helper functions to enhance the theme experience.
8
var body = $( 'body' ),
12
* Adds a top margin to the footer if the sidebar widget area is higher
13
* than the rest of the page, to help the footer always visually clear
17
if ( body.is( '.sidebar' ) ) {
18
var sidebar = $( '#secondary .widget-area' ),
19
secondary = ( 0 === sidebar.length ) ? -40 : sidebar.height(),
20
margin = $( '#tertiary .widget-area' ).height() - $( '#content' ).height() - secondary;
22
if ( margin > 0 && _window.innerWidth() > 999 ) {
23
$( '#colophon' ).css( 'margin-top', margin + 'px' );
29
* Enables menu toggle for small screens.
32
var nav = $( '#site-navigation' ), button, menu;
37
button = nav.find( '.menu-toggle' );
42
// Hide button if menu is missing or empty.
43
menu = nav.find( '.nav-menu' );
44
if ( ! menu || ! menu.children().length ) {
49
button.on( 'click.twentythirteen', function() {
50
nav.toggleClass( 'toggled-on' );
53
// Fix sub-menus for touch devices.
54
if ( 'ontouchstart' in window ) {
55
menu.find( '.menu-item-has-children > a' ).on( 'touchstart.twentythirteen', function( e ) {
56
var el = $( this ).parent( 'li' );
58
if ( ! el.hasClass( 'focus' ) ) {
60
el.toggleClass( 'focus' );
61
el.siblings( '.focus' ).removeClass( 'focus' );
66
// Better focus for hidden submenu items for accessibility.
67
menu.find( 'a' ).on( 'focus.twentythirteen blur.twentythirteen', function() {
68
$( this ).parents( '.menu-item, .page_item' ).toggleClass( 'focus' );
73
* Makes "skip to content" link work correctly in IE9 and Chrome for better
76
* @link http://www.nczonline.net/blog/2013/01/15/fixing-skip-to-content-links/
78
_window.on( 'hashchange.twentythirteen', function() {
79
var element = document.getElementById( location.hash.substring( 1 ) );
82
if ( ! /^(?:a|select|input|button|textarea)$/i.test( element.tagName ) ) {
83
element.tabIndex = -1;
91
* Arranges footer widgets vertically.
93
if ( $.isFunction( $.fn.masonry ) ) {
94
var columnWidth = body.is( '.sidebar' ) ? 228 : 245;
96
$( '#secondary .widget-area' ).masonry( {
97
itemSelector: '.widget',
98
columnWidth: columnWidth,
100
isRTL: body.is( '.rtl' )
b'\\ No newline at end of file'