javascript – css指针 – 事件属性更改和相应的jquery事件不会一起触发

前端之家收集整理的这篇文章主要介绍了javascript – css指针 – 事件属性更改和相应的jquery事件不会一起触发前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

这是我的代码段.我使用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()的元素禁用指针事件:

$('#element_id').css('pointer-events','none');

>如果要为具有.css()的元素启用指针事件:

$('#element_id').css('pointer-events','');

在#1中,元素被禁用,然后您无法访问该元素.

在#2中,相同的元素被启用,您可以对其执行其他jQuery操作.

原文链接:https://www.f2er.com/css/427003.html

猜你在找的CSS相关文章