仅当鼠标不在输入字段上时,JQUERY 键控函数才会响应
JQUERY keyup function response only when mouse is not over input field
我对键控功能有问题
我有一个订购表格,其中有x个项目,其中一些是分组的,例如:
项目 1 - 第 1 组项目 2 - 第 1 组
分组的项目,有 2 个输入字段,1 个隐藏,1 个可见,我试图做的是将隐藏输入的值更改为相同的可见输入值。
我的问题是,只有当输入不再集中时,值才会改变,有什么办法可以做到,当值在集中输入中发生变化时,它会立即改变?
这是我的做法:
$('.item .quantity').on("change paste keyup", function(event) {
var crr_item = $(this).parents(".item"),
quantity = $(this).val(),
items = crr_item.parent().children(".item"),
group = false;
if(crr_item.hasClass('group1'))
group = 'group1';
else if(crr_item.hasClass('group2'))
group = 'group2';
if(crr_item.hasClass('group1_hover'))
group = 'group1';
else if(crr_item.hasClass('group2_hover'))
group = 'group2';
for(var i = items.index(crr_item)-1; i >= 0; i--) {
var item = items.eq(i);
if(!item.hasClass(group)) break;
item.find('.quantity').val(quantity);
calc_sum_eu(item);
}
calc_sum_eu(crr_item);
for(var i = items.index(crr_item); i < items.length; i++) {
var item = items.eq(i);
if(!item.hasClass(group)) break;
item.find('.quantity').val(quantity);
calc_sum_eu(item);
}
});
尝试在其上添加一个标志,以检查它是否聚焦
var isFocused = false;
$('.item .quantity').on("focus", function(event) {
isFocused = true;
});
$('.item .quantity').on("blur", function(event) {
isFocused = false;
});
然后只需在 keyup 事件中添加 isFocused 变量即可进行验证。
相关文章:
- 是否有一个JS/jQuery函数可以获取某个类的每个元素的ID
- 如何在JQuery函数中定义一个值,然后调用另一个函数并使用该值
- 如何从jquery函数返回变量
- 如何将具有文本类型值的var放入jQuery函数中
- Jquery函数在错误的时间提交
- 锚链接无法使用.slideUp jquery函数
- 重新分解jQuery函数
- 如何在视图模型contet更新更新上调用Jquery函数
- 如何向这个javascript/jquery函数添加参数
- 添加类来触发jquery函数
- 更改智能表中的页面将停止JQuery函数的工作
- 使用每500ms运行一次的jquery函数是个好主意吗
- jQuery函数不能只在一个页面上工作
- 如何将jquery函数链接到vanilla选择器
- 仅在小型设备上调用jQuery函数
- 如何将jquery函数仅应用于大屏幕
- 奇怪的jquery函数行为
- Backbone listenTo不将jquery函数作为处理程序进行激发
- 在jquery函数内部设置来自jquery函数的var;t运行
- 从Jquery函数中获取一个变量