This may be a little long, but I'm a bit fired up about this right now because it was a big debate with my boss and coworker (that is still unresolved). It wasn't heated really, but we have starkly different views on the subject. I'd love to hear everyone's opinion on it.
So, we're working on some responsive websites. On a regular computer hovering on menu items and accessing subitems isn't an issue; it's pretty straightforward. However things change when you look at touch devices such as phones or tablets. Hovering doesn't really work, and if it does, it's quirky at best and implemented differently depending on the device manufacturer or browser vendor. Simply put, there's no standard (that I know of, anyway) of how that operates. As of now with my phone, I can press a top level menu item, hold it, and sometimes the menu comes up (but I have to release before the browser thinks I'm "right-clicking"); half the time it just "clicks" the menu item. If I cancel the right-click menu, the drop down menu is there and I can freely press any of the links. My phone is rather old, but my boss has the new Galaxy S4 or whatever, and he was having issues accessing dropdown menus as well. Simply put, it's spotty at best.
So, obviously at smaller screen sizes you offer a mobile-friendly menu. Pretty straightforward. But here is where the debate started. When my boss sells a reactive site to a client, he is essentially selling him the exact same website, just fitted to different screen sizes. This includes the menu. He wants the menu to be exactly the same as the desktop version - but - since pressing or tapping top-level menu items has proven to be troublesome, this doesn't really work. So I offered two solutions:
1) Serve a different menu (I don't mean a differently styled menu - that's a given. I mean a menu with different options, styled for mobile of course). You're on a mobile device anyway, chances are you're browsing the site differently than you would on a desktop. It is in my opinion that a mobile menu should only serve the important menu options (about us, contact, etc.) and shouldn't as a rule mimic the desktop menu exactly.
2) Serve the same menu, but make sure the top-level menu items link to the first item in the dropdown. For example if the top-level item is "About" and the first submenu item is "Who We Are". This is a little more case-by-case, but it works well enough. For the mobile menu that mimics it, I have written some jQuery to ignore top-level menu times so it just expands and shows the sub items (looks good in my opinion if it's styled correctly - see Microsoft's website as an example).
My boss doesn't like these solutions really. He would rather have the same menu in all cases, but just never have the top-level items link. Not even on the desktop. He wants to "sell the client the same website in all cases", and thinks that it will be too difficult for clients to update two menus (don't see how - we're talking WordPress here), or it's just too much work for us to create multiple menus. Apparently the "rule" has always been this with responsive sites (that we have made).
Personally, I think the top-level menu items should always link on a desktop, whether they go to their own page, or to the first item in the dropdown. I think it's non-intuitive for someone to click on it, and nothing happens, even if a dropdown is there. Also, you may have top-level items without a dropdown. Those do link. In my opinion that's inconsistent and, well, wrong. All the top-level items should behave the same way (on a desktop menu), regardless if they have a dropdown or not.
The only exception to the above is when the dropdown is not activated by hover, but by click, like Microsoft's website; you have to click the top-level items to show and hide the dropdowns. That makes sense. But otherwise they should always link. I started searching around the web and found big company sites with dropdowns and reactive, and every single one of them had their top-level menu items link. Also found this brief discussion, where some people were also discussing the issue and I have to agree with them.
So what do you guys think? Sorry if it's a bit jumbled; my thoughts may be racing around right now.