我有这样的脚本:
$(document).on('focus.inputmask.data-api', '[data-mask]', function (e) {
var $this = $(this)
if ($this.data('inputmask')) return
e.preventDefault()
$this.inputmask($this.data())
});
我想为这个函数设置setTimeout,这就是我试过的
$(document).on('focus.inputmask.data-api', '[data-mask]', setTimeout(function (e) {
var $this = $(this)
if ($this.data('inputmask')) return
e.preventDefault()
$this.inputmask($this.data())
}, 10))
但我在控制台上看到的错误如下:
Uncaught TypeError: Cannot read property 'preventDefault' of undefined
答案 0 :(得分:1)
是的,e
根据您的代码undefined
,因为您已经在timeout
函数的回调函数参数的位置传递了.on()
对象。 / p>
尝试,
$(document).on('focus.inputmask.data-api', '[data-mask]', function (e) {
setTimeout(function (e) {
var $this = $(this)
if ($this.data('inputmask')) return
e.preventDefault()
$this.inputmask($this.data())
},10);
})