如果在移動事件時當前按下鼠標左鍵,Chrome似乎在mousemove
偵聽器中有event.which === 1
。如何在mousemove監聽器中檢測event.which?
但Firefox不;它僅在mousedown
和mouseup
中設置event.which
。我不知道其他瀏覽器。
任何人都可以想出一個很好的方法來檢測這種行爲嗎?
注意:我知道你可以使用mousedown和mouseup監聽器來更新mouseIsPressed
變量,但這在我的情況下並不是一個好習慣(在iframed窗口中的拖動交互,即無法捕捉mouseup如果它發生在iframe之外),所以我想在可用的地方使用本地event.which
。
噢好吧,這很好。那麼其他瀏覽器呢?有沒有辦法測試任何瀏覽器,看它是否支持這個規範?特別event.which移動鼠標?問題是我需要提前知道它是否受支持,因爲答案會影響我在mousedown中設置拖動交互的操作。 – callum
@callum:您可以使用document.createEvent('MouseEvent')'中的'document.createEvent &&'按鈕來檢查標準支持。然而,這不是標準,你只需要自己測試一下,看看它的覆蓋範圍是否可以接受。 – Ryan