Skip to content

Commit d04d2c2

Browse files
authored
Merge pull request #18 from campuspress/update/submenus
Navigation Enhancements
2 parents be5a0d3 + 5ca7805 commit d04d2c2

File tree

5 files changed

+20
-57
lines changed

5 files changed

+20
-57
lines changed

divi-accessibility.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
* Plugin Name: Divi Accessibility
1717
* Plugin URI: https://wordpress.org/plugins/accessible-divi/
1818
* Description: Improve Divi accessibility in accordance with WCAG 2.0 guidelines.
19-
* Version: 1.2.1
19+
* Version: 1.2.2
2020
* Author: CampusPress
2121
* Author URI: https://campuspress.com
2222
* License: GPL-2.0+

public/class-divi-accessibility-public.php

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -155,13 +155,15 @@ public function can_load_tota11y() {
155155
*/
156156
public function can_load( $option ) {
157157

158-
$settings = $this->settings;
158+
$can_load = false;
159159

160+
$settings = $this->settings;
161+
160162
if ( isset( $settings[ $option ] ) && 1 == $settings[ $option ] ) {
161-
return true;
163+
$can_load = true;
162164
}
163165

164-
return false;
166+
return apply_filters( 'divi_accessibility_can_load', $can_load, $option );
165167

166168
}
167169

public/partials/divi-accessibility-embedded-css.php

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,9 @@
3131
visibility: visible !important;
3232
opacity: 1 !important; <?php // Necessary for tabbing through the primary top nav - Divi only has .et-hover containing visibility. ?>
3333
}
34+
.da11y-submenu-show {
35+
visibility: visible !important;
36+
}
3437
<?php
3538

3639
} // End if().

public/partials/divi-accessibility-embedded-js.php

Lines changed: 7 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -25,27 +25,15 @@
2525
(function ($) {
2626
$(document).ready(function () {
2727

28-
var hoverClasses = 'et-hover et-show-dropdown';
29-
var currentListItem = '';
30-
31-
/**
32-
* Update top navigation classes.
33-
*/
34-
function update_navigation_classes(el) {
35-
var currentLink = el.find('a:focus');
36-
currentListItem = currentLink.closest('li');
37-
38-
// check if focused on top level nav item
39-
if (el.is(currentListItem.closest('ul')) || el.find('a:focus').length === 0) {
40-
el.find('li').removeClass(hoverClasses);
41-
}
42-
43-
// add appropriate divi hover classes if nav item has children
44-
if ($(currentListItem).children('ul').length) {
45-
currentListItem.addClass(hoverClasses);
46-
}
28+
if($('.menu-item-has-children').find('a') ) {
29+
$('.menu-item-has-children').find('a').not('.sub-menu a').attr('aria-expanded', 'false').addClass('da11y-submenu');
4730
}
4831

32+
$('.da11y-submenu').focus(function() {
33+
$(this).attr('aria-expanded', 'true');
34+
$('.sub-menu').addClass('da11y-submenu-show');
35+
});
36+
4937
/**
5038
* Generate search form styles.
5139
*
@@ -117,12 +105,6 @@ function hide_search() {
117105

118106
$(this).keyup(function () {
119107

120-
var nav = $('.nav');
121-
var menu = $('.menu');
122-
123-
update_navigation_classes(nav);
124-
update_navigation_classes(menu);
125-
126108
$('.et-search-field').focus(function () {
127109
show_search();
128110
}).blur(function () {
@@ -505,34 +487,6 @@ function skipTo(target) {
505487
*/
506488
$('.et-pb-contact-message').attr('role', 'alert');
507489

508-
/**
509-
* Add role="menubar" to top level unorderd lists.
510-
*/
511-
$('.nav').each(function () {
512-
$(this).attr('role', 'menubar');
513-
});
514-
515-
/**
516-
* Add role="menubar" to top level unorderd lists.
517-
*/
518-
$('.bottom-nav').each(function () {
519-
$(this).attr('role', 'menubar');
520-
});
521-
522-
/**
523-
* Add role="menubar" to top level unorderd lists.
524-
*/
525-
$('.menu').each(function () {
526-
$(this).attr('role', 'menubar');
527-
});
528-
529-
/**
530-
* Add role="menubar" to top level unorderd lists.
531-
*/
532-
$('.sub-menu').each(function () {
533-
$(this).attr('role', 'menu');
534-
});
535-
536490
/**
537491
* Add aria-label="x".
538492
*

readme.txt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,10 @@ Plugin created by [CampusPress](https://campuspress.com). Plugin icon based off
5252

5353
== Changelog ==
5454

55+
= 1.2.2 =
56+
* Landmark refactoring for navigation.
57+
* Add better support for submenus.
58+
5559
= 1.2.1 =
5660
* Add better aria attribute support to navigation menus, comment forms, etc.
5761
* CSS fixes.

0 commit comments

Comments
 (0)