mirror of
https://github.com/liriliri/eruda.git
synced 2026-03-20 09:38:37 +08:00
fix(elements): select not working for desktop
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
import { Emitter, isErudaEl } from '../lib/util'
|
||||
import { Emitter, isErudaEl, isMobile } from '../lib/util'
|
||||
|
||||
export default class Select extends Emitter {
|
||||
constructor() {
|
||||
@@ -32,8 +32,13 @@ export default class Select extends Emitter {
|
||||
function addEvent(type, listener) {
|
||||
document.body.addEventListener(type, listener, true)
|
||||
}
|
||||
addEvent('touchstart', this._startListener)
|
||||
addEvent('touchmove', this._moveListener)
|
||||
if (isMobile()) {
|
||||
addEvent('touchstart', this._startListener)
|
||||
addEvent('touchmove', this._moveListener)
|
||||
} else {
|
||||
addEvent('mousedown', this._startListener)
|
||||
addEvent('mousemove', this._moveListener)
|
||||
}
|
||||
addEvent('click', this._clickListener)
|
||||
|
||||
return this
|
||||
@@ -42,8 +47,13 @@ export default class Select extends Emitter {
|
||||
function rmEvent(type, listener) {
|
||||
document.body.removeEventListener(type, listener, true)
|
||||
}
|
||||
rmEvent('touchstart', this._startListener)
|
||||
rmEvent('touchmove', this._moveListener)
|
||||
if (isMobile()) {
|
||||
rmEvent('touchstart', this._startListener)
|
||||
rmEvent('touchmove', this._moveListener)
|
||||
} else {
|
||||
rmEvent('mousedown', this._startListener)
|
||||
rmEvent('mousemove', this._moveListener)
|
||||
}
|
||||
rmEvent('click', this._clickListener)
|
||||
|
||||
return this
|
||||
|
||||
Reference in New Issue
Block a user