Microsoft Surface: How do I allow JavaScript touch/drag events to work without being intercepted by the browser?

后端 未结 1 976
谎友^
谎友^ 2020-12-17 01:26

I have a Google Maps map on my web site, but when using it with a Microsoft Surface tablet, the \"pan\" gesture is intercepted by the browser -- it tries to go to the next b

相关标签:
1条回答
  • 2020-12-17 02:22

    According to MS's guide on "Pointer and gesture events" (here: http://msdn.microsoft.com/en-us/library/ie/hh673557%28v=vs.85%29.aspx#Panning_and_zooming) you need to add a CSS class to the element you want to disable panning on with the "-ms-touch-action" rule set to "none" like this:

    .disablePanZoom 
    {
        -ms-touch-action: none; /* Shunt all pointer events to JavaScript code. */
    }
    

    --EDIT--

    There is now a non-prefixed touch-action property, proposed in the W3C Pointer Events Candidate recomendation.

    From the MSDN documentation:

    As of Internet Explorer 11, the Microsoft vendor prefixed version of this event (-ms-touch-action) is no longer supported and may be removed in a future release. Instead, use the non-prefixed name touch-action, which is better for standards compliance and future compatibility.

    0 讨论(0)
提交回复
热议问题