From 2630996c1ce6e7a9631b5259239313282f4b2f98 Mon Sep 17 00:00:00 2001 From: PaulMaly Date: Wed, 24 Mar 2021 01:05:48 +0300 Subject: [PATCH] Incorrect event.button checking. (#608) MouseEvent.button === 0 if main button pressed, usually the left button or the un-initialized state (https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/button). Also usually if event.which not available this means event.button exists, so enough just check them in the correct sequence. --- packages/kit/src/runtime/client/router.js | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/packages/kit/src/runtime/client/router.js b/packages/kit/src/runtime/client/router.js index 1f6270a197e9..efab4d9cf0e1 100644 --- a/packages/kit/src/runtime/client/router.js +++ b/packages/kit/src/runtime/client/router.js @@ -1,10 +1,5 @@ import { find_anchor, get_base_uri } from './utils'; -/** @param {MouseEvent} event */ -function which(event) { - return event.which === null ? event.button : event.which; -} - function scroll_state() { return { x: pageXOffset, @@ -73,7 +68,7 @@ export class Router { addEventListener('click', (event) => { // Adapted from https://github.com/visionmedia/page.js // MIT license https://github.com/visionmedia/page.js#license - if (which(event) !== 1) return; + if (event.button || event.which !== 1) return; if (event.metaKey || event.ctrlKey || event.shiftKey || event.altKey) return; if (event.defaultPrevented) return;