Although it’s possible to extend the above optimisation approach to checknavigator.maxTouchPoints and to then hook up our listener to pointerup rather than click, there is a much simpler way: setting the touch-action CSS property of our element to none eliminates the delay.
/* suppress default touch action like double-tap zoom */
a, button {
-ms-touch-action: none;
touch-action: none;
}