-
Notifications
You must be signed in to change notification settings - Fork 62
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
macys.com - Mouse-Overs: On mouse hover submenus are not displaying [msft ref# 261772] #304
Comments
For more detail on 'Mouse touch and pointer events' see the latest blog by @jacobrossi http://blogs.msdn.com/b/ie/archive/2014/09/05/making-the-web-just-work-with-any-input.aspx |
Perhaps try these contact points? |
Did the web site change? Is it fixed? |
issue still reproduces - you can see the issue in Chrome or IE11 desktop that has touchscreen. The touch experience doesn't allow users to see submenus. |
Microsoft Edge is the default browser for Windows 10 and all efforts are focused on the Windows 10 Anniversary Update occurring on 8/2. As this issue doesn’t repro in MS Edge, closing. |
URL: macys.com
Browser / Version: IE 11.0/ Firefox / Chrome
Operating System: Windows
Problem type: Looks like the website has a bug.
Site owner: Unknown
Steps to Reproduce
This issue can only be observed in desktop IE when using a prototype built that exposes Touch Events. However, you typically should be able to see these issues in Chrome by enabling Touch Events in the developer tools or using a mouse in Chrome on a device that also has a touchscreen.
1.Navigate to URL: http://www1.macys.com/
2.Observe that on mouse hover on menus in menubar submenus are not displaying.
Actual:
On mouse hover submenus are not displaying.
Expected Result:
On mouse hover submenus should be displayed properly.
Diagnosis feedback:
Internet Explorer for Windows Phone 8.1 Update now supports both Pointer Events and Touch Events. However, Internet Explorer does not yet support Touch Events on Windows (desktops, laptops, tablets, hybrids, etc). Web developers have asked us to also bring Touch Events to Internet Explorer on Windows, and we want to do that. However, we’ve identified a particular coding pattern that causes compatibility issues that prevent us from following through on this. Similarly, other desktop browsers have also seen these issues and would like to work to resolve them. This site was identified as one of several sites that may have compatibility issues due to this coding pattern. We’d like your help in updating this code so that Touch Events can be brought to all browsers on mobile and desktop.
Code Details:
The following coding pattern (or something very similar) was observed:
if('touchstart' in document.body) {
elm.addEventListener('touchstart',fn1);
}else{
elm.addEventListener('mousedown', fn2); //only registered on browsers/devices without Touch Events
}
This pattern assumes that the Touch Event API is only exposed on devices that are touch-only. As a result, devices that expose the Touch Event API but have a mouse attached may not function correctly since the mouse event handlers are not registered. Changing this pattern to use both Touch and Mouse Event handlers together will resolve this issue:
elm.addEventListener('touchstart',fn1);
elm.addEventListener('mousedown', fn2);
Alternatively, you might consider using Pointer Events to share code across event handlers:
if (window.PointerEvent) {
elm.addEventListener('pointerdown', fn);
} else {
//Fallback support for browsers that do not yet support Pointer Events
elm.addEventListener('touchstart',fn);
elm.addEventListener('mousedown',fn);
}
The text was updated successfully, but these errors were encountered: