jquery 可选择的 mousedown 取消选择 metakey
jquery selectable mousedown unselecting metakey
我正在尝试让 select能够为移动应用程序工作(使用 jquery 移动设备)。如果我使用控件 mousedown 进行 select 单次添加(并执行 unselects),一切都很好。
但是因为它是用于移动应用程序的,所以我不能使用控制键。我已经添加了这段代码来处理控制键.. 它可以添加 selection 事件,但它会破坏 selected 事件的 unselecting。 (即,如果您单击 selected 项目,它不会取消 select)。同样由于某种原因,这会在一段时间后挂断并且处理事件变得非常缓慢......
这是我正在谈论的代码:
$("#tableId").bind("mousedown", function (e) {
e.metaKey = true;
}).selectable();
我的全套代码在jsfiddle中:
http://jsfiddle.net/Y3TUj/38/
如果您在移动设备上,为什么不使用 tap
到 select 和 unselect(而不是 metakey
)...?
试试这个:
$("#tableId").bind("tap", function(e) {
e.preventDefault();
var el = e.target;
if ($(el).hasClass("ui-selected")) {
$(el).removeClass('ui-selected').addClass('ui-unselecting');
} else {
$(el).addClass("ui-selecting");
}
$("#tableId").data("ui-selectable")._mouseStop(null);
});
Fiddle: http://jsfiddle.net/xw16e2ks/1/
我正在尝试让 select能够为移动应用程序工作(使用 jquery 移动设备)。如果我使用控件 mousedown 进行 select 单次添加(并执行 unselects),一切都很好。
但是因为它是用于移动应用程序的,所以我不能使用控制键。我已经添加了这段代码来处理控制键.. 它可以添加 selection 事件,但它会破坏 selected 事件的 unselecting。 (即,如果您单击 selected 项目,它不会取消 select)。同样由于某种原因,这会在一段时间后挂断并且处理事件变得非常缓慢......
这是我正在谈论的代码:
$("#tableId").bind("mousedown", function (e) {
e.metaKey = true;
}).selectable();
我的全套代码在jsfiddle中: http://jsfiddle.net/Y3TUj/38/
如果您在移动设备上,为什么不使用 tap
到 select 和 unselect(而不是 metakey
)...?
试试这个:
$("#tableId").bind("tap", function(e) {
e.preventDefault();
var el = e.target;
if ($(el).hasClass("ui-selected")) {
$(el).removeClass('ui-selected').addClass('ui-unselecting');
} else {
$(el).addClass("ui-selecting");
}
$("#tableId").data("ui-selectable")._mouseStop(null);
});
Fiddle: http://jsfiddle.net/xw16e2ks/1/