vue输入框组件,反复获取焦点,键盘控制的一次加减大小会bian

GlimmerL 2019-10-11 10:12:03
keyControl: function(){
var _this=this;
$(window).keydown(function(e){
if($('input')){
if(e.keyCode==38){
_this.handleUp();
}
else if(e.keyCode==40){
_this.handleDown();
}
}
});
}


第一次使用↑键 数字加10,失去聚焦后,再次聚焦,使用↑,数字增加20,这是为什么,有什么办法可以解决吗?
...全文
166 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
GlimmerL 2019-10-12
  • 打赏
  • 举报
回复
引用 4 楼 纨_绔 的回复:
另一个down函数同理哈,我也是刚开始学习,一起进步
不会的,当input里面值改变时会触发 @change="handleChange" handleChange里面有判断
纨_绔 2019-10-12
  • 打赏
  • 举报
回复
另一个down函数同理哈,我也是刚开始学习,一起进步
纨_绔 2019-10-12
  • 打赏
  • 举报
回复
改成这样的 你能看懂的 keyControl: function() { var _this = this; $(window).unbind('keydown') $(window).keydown(function(e) { if ($('input')) { if (e.keyCode === 38) { _this.handleUp(); } else if (e.keyCode === 40) { _this.handleDown(); } } }); } }, 另外建议你这个函数改一下,否则会超出max handleUp: function() { if (this.currentValue >= this.max) return; if (this.currentValue + this.currentStep > this.max) { this.currentValue = this.max return } this.currentValue += this.currentStep; },
GlimmerL 2019-10-12
  • 打赏
  • 举报
回复
引用 1 楼 纨_绔 的回复:
[quote=引用 楼主 GlimmerL的回复:] keyControl: function(){ var _this=this; $(window).keydown(function(e){ if($('input')){ if(e.keyCode==38){ _this.handleUp(); } else if(e.keyCode==40){ _this.handleDown(); } } }); } 第一次使用↑键 数字加10,失去聚焦后,再次聚焦,使用↑,数字增加20,这是为什么,有什么办法可以解决吗?
可以把components写的详细一点么。。。[/quote] https://blog.csdn.net/GlimmerL/article/details/102514495
纨_绔 2019-10-11
  • 打赏
  • 举报
回复
引用 楼主 GlimmerL的回复:
keyControl: function(){
var _this=this;
$(window).keydown(function(e){
if($('input')){
if(e.keyCode==38){
_this.handleUp();
}
else if(e.keyCode==40){
_this.handleDown();
}
}
});
}


第一次使用↑键 数字加10,失去聚焦后,再次聚焦,使用↑,数字增加20,这是为什么,有什么办法可以解决吗?
可以把components写的详细一点么。。。

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧