The web page uses javascript scrolling by default, which tends to get choppy or Jump
Reported by
laiyong...@gmail.com,
Nov 21 2017
|
|||
Issue descriptionSteps to reproduce the problem: 1. goto https://uland.taobao.com/new_cat.htm?spm=a311n.9159044%2Fc.10803055.1&pid=mm_26632386_9834707_32742010 2. scroll in the page 3. What is the expected behavior? Normal scroll What went wrong? The web page uses javascript scrolling by default, which tends to get choppy or Jump Did this work before? Yes 38.0.2125.102 Chrome version: 63.0.3230.0 Channel: n/a OS Version: 7.0 Flash Version: This page use point event, but the old version of the support is not so good. When touch move, the chromium produce kTouchScrollStarted event,then the blink will calling PointerEventManager::BlockTouchPointers function and in_canceled_state_for_pointer_type_touch_ set to true,so it can not produce point event to js. I have a solution, when the pointdown/pointmove event script handler calling preventDefault, do not calling PointerEventManager::BlockTouchPointers function.
,
Nov 21 2017
Tested the issue in Android and could reproduce the issue. Steps Followed: 1. Launched Chrome Browser. 2. Navigated to https://uland.taobao.com/new_cat.htm?spm=a311n.9159044%2Fc.10803055.1&pid=mm_26632386_9834707_32742010 3. Observed the scrolling is a bit choppy Chrome versions tested: 62.0.3202.94, 64.0.3273.0 OS Android 7.0.0 Android Devices 7.0.0; SM-J710F Build/NRD90M Below is the bisect info ======================= Chrome Good Build -- 55.0.2875.0 Chrome Bad Build -- 55.0.2877.0 Manual CL: https://chromium.googlesource.com/chromium/src/+log/55.0.2875.0..55.0.2877.0?pretty=fuller&n=10000 You are looking for a change made after 421810(GOOD), but before 421811(BAD). From the above revision range suspecting the following change have fixed the issue and assigning the issue to the owner concerned-- https://chromium.googlesource.com/chromium/src/+/902a3d6303dfbfd49a24173777afcb4b70234a17 @mustaq -- Could you please look into the issue. Please navigate to below link for log's and video-- go/chrome-androidlogs/787286 Issue is seen in Desktop as well using #64.0.3273.0. Thanks!
,
Nov 21 2017
hi,@mustaq. I have a solution, when the pointdown/pointmove event script handler calling preventDefault, do not calling PointerEventManager::BlockTouchPointers function. Can I submit a patch to solve this problem? Thanks!
,
Nov 21 2017
Hi laiyonggao@: this is not a Chrome bug. An ongoing PointerEvent stream must be blocked (after firing a 'pointercancel')) when browser action such as scrolling starts. Looks like the site is calling preventDefault() on a 'pointerdown' to stop browser scrolling. This is not the correct approach for PointerEvents. To prevent any browser action (scrolling/zooming), add the style "touch-action: none" to the JS-scrolled element. Here is the spec if you are interested: https://w3c.github.io/pointerevents/#declaring-candidate-regions-for-default-touch-behaviors --- I have verified that adding "touch-action: none" to <div class="catGroupItem" data-spm="01110" data-spm-max-idx="9"> fixes the site's scrolling problem.
,
Nov 22 2017
Hi,mustaq. Thank you for your reply and suggestion. |
|||
►
Sign in to add a comment |
|||
Comment 1 by laiyong...@gmail.com
, Nov 21 20172.0 MB
2.0 MB View Download