这是我的代码段.我使用iscroll 4滚动触摸设备和桌面.
$('#next_item').bind('mousedown touchstart',function (e) {
//do something onclick
$(this).bind('mousemove touchmove',function(e){ //triggers only when i drag over it
dragstart = true;
$(this).css('pointer-events','none');
myScroll._start(myDown);
return;
});
});
$('#next_item').bind('mouseup touchend',function (e) {
if(dragstart) {
dragstart = false;
$(this).css('pointer-events','auto');
}
});
我在#next_item上有click事件,它执行特定任务,并在#next_item上执行拖动事件,执行不同的任务.现在问题是当#next_item接收到拖动事件时,css指针事件立即变为none,但拖动没有触发.当我执行mouseup然后再次从#next_item上拖动时,只会触发拖动.我需要css指针事件来将拖动事件传递给底层元素.如果我做错了,请建议.没有指针事件iscroll在传递#next_item下面的拖动事件时会出错
最佳答案
>如果要为具有.css()的元素禁用指针事件:
原文链接:https://www.f2er.com/css/427003.html$('#element_id').css('pointer-events','none');
>如果要为具有.css()的元素启用指针事件:
$('#element_id').css('pointer-events','');
在#1中,元素被禁用,然后您无法访问该元素.
在#2中,相同的元素被启用,您可以对其执行其他jQuery操作.