A touch-friendly and responsive navigation menu

Categorized as Web Development Tagged

The startup client I was working for- Upgrademe, was launching a new web app for their educational online resource. I was specifically working on the front-end development of the web app.

Setting up the secondary navigation menu for the web app posed some challenges for the development team. Since the majority of their audience was school/college kids, it was vital to have the navigation touch-friendly, so that it functions well on tablets, iPads, and other touch-sensitive devices.

The key considerations when developing a touch-friendly and responsive navigation menu were:

  • Get the navigation menu to respond to tapping versus hovering.
  • Make the navigation usable on small screen space.
Screenshot of the touch-friendly responsive navigation menu
  • Using jQuery and CSS, I build an open/close navigation menu.
  • Using media queries the navigation was made responsive.
  • Instead of using the hover on-off states to display the open/close navigation, using the jQuery events – mousedown and touchstart, to open and close the drop-down menu.

The jQuery code snippet

$(".facetParent > a").on("mousedown touchstart", function(e){
if(!$(this).hasClass("active")) {
// hide any open menus and remove all other classes
$(".facetParent div").slideUp(300);
$(".facetParent a").removeClass("active");

// open our new menu and add the open class
else if($(this).hasClass("active")) {

By Femy Praseeth

Femy Praseeth is a Web developer with over 5 years of experience creating WordPress websites for purpose-driven organizations, from their designs. She is also a WP Noteworthy contributor, a11y advocate, and content creator, from San Jose, California

Leave a comment

Your email address will not be published. Required fields are marked *