Making WordPress.org

Changeset 123


Ignore:
Timestamp:
11/19/2013 08:30:45 AM (11 years ago)
Author:
coffee2code
Message:

jobs.wordpress.net: Properly implement mobile menus. props mercime. see #84

  • style.css:
    • Add mobile styles
    • Fix color and padding of main navigation menu-toggle element
    • Add icons to the two mobile menus
    • Fix padding for job category row without any entry
  • sidebar.php: Add hooks to enable mobile menu set up of Position Type categories
  • navigation.js: Replace navigation.js which handled one menu with jQuery to handle both mobile menus (Position Type and Main Navigation menus)
  • functions.php: Move other enqueued stylesheets above the theme's main stylesheet and add jQuery dependency for revised navigation.js
Location:
sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/functions.php

    r88 r123  
    104104 */
    105105function jobswp_scripts() {
     106    wp_enqueue_style( '996-normalize', get_template_directory_uri() . '/css/996/normalize.css' );
     107    wp_enqueue_style( '996-base',      get_template_directory_uri() . '/css/996/base.css' );
     108    wp_enqueue_style( '996-grid',      get_template_directory_uri() . '/css/996/grid.css' );
     109    wp_enqueue_style( '996-style',     get_template_directory_uri() . '/css/996/style.css' );
     110    wp_enqueue_style( 'dashicons' );
     111    wp_enqueue_style( 'open-sans' );
    106112    wp_enqueue_style( 'jobswp-style', get_stylesheet_uri() );
    107113
    108     wp_enqueue_script( 'jobswp-navigation', get_template_directory_uri() . '/js/navigation.js', array(), '20120206', true );
    109 
     114    wp_enqueue_script( 'jobswp-navigation', get_template_directory_uri() . '/js/navigation.js', array( 'jquery'), '20131107', true );
    110115    wp_enqueue_script( 'jobswp-skip-link-focus-fix', get_template_directory_uri() . '/js/skip-link-focus-fix.js', array(), '20130115', true );
    111116
     
    117122        wp_enqueue_script( 'jobswp-keyboard-image-navigation', get_template_directory_uri() . '/js/keyboard-image-navigation.js', array( 'jquery' ), '20120202' );
    118123    }
    119 
    120     wp_enqueue_style( '996-normalize', get_template_directory_uri() . '/css/996/normalize.css' );
    121     wp_enqueue_style( '996-base',      get_template_directory_uri() . '/css/996/base.css' );
    122     wp_enqueue_style( '996-grid',      get_template_directory_uri() . '/css/996/grid.css' );
    123     wp_enqueue_style( '996-style',     get_template_directory_uri() . '/css/996/style.css' );
    124     wp_enqueue_style( 'dashicons' );
    125     wp_enqueue_style( 'open-sans' );
    126124
    127125    /* Modernizr disbabled because it causes Safari to whitescreen */
  • sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/js/navigation.js

    r88 r123  
    22 * navigation.js
    33 *
    4  * Handles toggling the navigation menu for small screens.
     4 * Handles toggling the two navigation menus for small screens.
     5 *
    56 */
    6 ( function() {
    7     var container, button, menu;
     7jQuery(document).ready(function(){
    88
    9     container = document.getElementById( 'site-navigation' );
    10     if ( ! container )
    11         return;
     9    jQuery('.menu-toggle').click(function () {
     10        jQuery('.menu').slideToggle(400, function () {
     11            jQuery('.menu').toggleClass('mobile-pop').css('display', '');
     12        });
     13    });
    1214
    13     button = container.getElementsByTagName( 'h1' )[0];
    14     if ( 'undefined' === typeof button )
    15         return;
     15    jQuery('.menu-jobs-toggle').click(function () {
     16        jQuery('.menu-jobs').slideToggle(400, function () {
     17            jQuery('.menu-jobs').toggleClass('mobile-pop').css('display', '');
     18        });
     19    });
    1620
    17     menu = container.getElementsByTagName( 'ul' )[0];
    18 
    19     // Hide menu toggle button if menu is empty and return early.
    20     if ( 'undefined' === typeof menu ) {
    21         button.style.display = 'none';
    22         return;
    23     }
    24 
    25     if ( -1 === menu.className.indexOf( 'nav-menu' ) )
    26         menu.className += ' nav-menu';
    27 
    28     button.onclick = function() {
    29         if ( -1 !== container.className.indexOf( 'toggled' ) )
    30             container.className = container.className.replace( ' toggled', '' );
    31         else
    32             container.className += ' toggled';
    33     };
    34 } )();
     21});
  • sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/sidebar.php

    r88 r123  
    1111            <aside id="cats" class="widget">
    1212                <h3 class="widget-title"><?php _e( 'Position Types', 'jobswp' ); ?></h3>
    13                 <ul>
     13                <a href="#" class="menu-jobs-toggle"></a>
     14                <ul class="menu-jobs">
    1415                    <li class="job-cat-item job-cat-item-all"><a href="/" title="<?php esc_attr_e( 'View all job openings', 'jobswp' ); ?>"><?php _e( 'All Openings', 'jobswp' ) ?></a></li>
    1516                <?php Jobs_Dot_WP::list_job_categories(); ?>
  • sites/trunk/jobs.wordpress.net/public_html/wp-content/themes/jobswp/style.css

    r88 r123  
    456456    display: none;
    457457}
     458.menu {
     459    display: block;
     460}
    458461
    459462@media screen and (max-width: 600px) {
     
    759762    color: #21759b;
    760763}
     764
     765/* Small menu */
     766.menu-jobs-toggle {
     767    display: none;
     768}
     769.menu-jobs {
     770    display: block;
     771}
     772
    761773.all-job-categories a:hover, .jobs-group a:hover, #secondary #cats li a:hover {
    762774    color: #2EA2CC;
     
    12461258    .container .jobs-group .grid_4,
    12471259    .container .jobs-group .grid_7,
    1248     .post-job-job-info {
     1260    .post-job-job-info,
     1261    .container .no-job.grid_9 {
    12491262        width: 100%;
    12501263    }
     
    12521265    .container .jobs-group .grid_2,
    12531266    .container .jobs-group .grid_4,
    1254     .container .hentry .grid_3 {
     1267    .container .hentry .grid_3,
     1268    .container .no-job.grid_9 {
    12551269        padding-left: 20px;
    12561270        padding-right: 20px;
     
    13011315    }
    13021316
     1317    #cats {
     1318        position: relative;
     1319    }
     1320    #cats h3 {
     1321        color: #2ea2cc;
     1322        margin: 0;
     1323        padding-bottom: 10px;
     1324    }
     1325    #cats h3:after {
     1326        content: '\f228';
     1327        font: 16px 'dashicons';
     1328        float: right;
     1329        vertical-align: top;
     1330    }
     1331    .menu-jobs {
     1332        display: none;
     1333        margin-top: 10px;
     1334    }
     1335    .menu-jobs.mobile-pop {
     1336        display: block;
     1337    }
     1338    .menu-jobs-toggle {
     1339        background: transparent;
     1340        display: block;
     1341        position: absolute;
     1342        top: 0;
     1343        left: 0;
     1344        width: 100%;
     1345        height: 50px;
     1346    }
    13031347    #wporg-footer {
    13041348        min-width: inherit;
    13051349    }
    13061350}
     1351@media only screen and (max-width: 600px) {
     1352    .menu {
     1353        display: none;
     1354    }
     1355    .menu.mobile-pop {
     1356        display: block;
     1357    }
     1358    .menu-toggle {
     1359        color: #ddd;
     1360        display: block;
     1361        font-size: 18px;
     1362        padding-bottom: 20px;
     1363        text-align: center;
     1364    }
     1365    .menu-toggle:after {
     1366        content: '\f228';
     1367        font: 16px 'dashicons';
     1368        margin-left: 15px;
     1369        vertical-align: middle;
     1370    }
     1371}
Note: See TracChangeset for help on using the changeset viewer.