Skip to content
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

pagesjaunes.fr: Graphics & Layout: Incorrect sub-menu opens up [msft ref# 261614] #307

Closed
TheWebJustWorks opened this issue Sep 5, 2014 · 6 comments

Comments

@TheWebJustWorks
Copy link

URL: pagesjaunes.fr
Browser / Version: IE 11.0/ Firefox / Chrome
Operating System: Windows
Problem type: Looks like the website has a bug.
Site owner: No

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://www.pagesjaunes.fr/
  2. Click on the dropdown icon present at menu option "Plus de services".
  3. Observe that Incorrect sub-menu opens up for "Plus de services".

Actual:
Incorrect sub-menu opens up.

Expected Result:
Correct sub-menu options must open up.

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);
}

@TheWebJustWorks TheWebJustWorks changed the title pagesjaunes.fr - pagesjaunes.fr: Graphics & Layout:Incorrect sub-menu opens up [msft ref# 261614] pagesjaunes.fr - Graphics & Layout: Incorrect sub-menu opens up [msft ref# 261614] Sep 5, 2014
@TheWebJustWorks TheWebJustWorks changed the title pagesjaunes.fr - Graphics & Layout: Incorrect sub-menu opens up [msft ref# 261614] pagesjaunes.fr: Graphics & Layout:Incorrect sub-menu opens up [msft ref# 261614] Sep 5, 2014
@TheWebJustWorks TheWebJustWorks changed the title pagesjaunes.fr: Graphics & Layout:Incorrect sub-menu opens up [msft ref# 261614] pagesjaunes.fr: Graphics & Layout: Incorrect sub-menu opens up [msft ref# 261614] Sep 5, 2014
@magsout
Copy link
Member

magsout commented Sep 5, 2014

I have sent a message on Twitter https://twitter.com/magsout/status/507977736112324609

@TheWebJustWorks
Copy link
Author

awesome @magsout :)

@TheWebJustWorks
Copy link
Author

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

@magsout
Copy link
Member

magsout commented Sep 5, 2014

Great article, thank you @TheWebJustWorks

@hallvors
Copy link

Seems they are on Facebook too (but probably same social media managers run this and Twitter :))
Facebook: https://www.facebook.com/pagesjaunes

@TheWebJustWorks
Copy link
Author

Issue no longer occurring. Updated to Fixed.

@karlcow karlcow added this to the fixed milestone Oct 30, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants
@hallvors @karlcow @magsout @TheWebJustWorks and others