如果在div里面如果div自身有滚动不生效,没有滚动的话则生效。

我想问问Chrome下滚轮滚动事件的问题。 我这写了个tab切换绑定了滚轮事件,问题是每个tab里面的div都会有滚动。 我想问的是如何判断鼠标所在区域 如果不在tab里面的div滚动切换tab生效。

        function scrollFunc(e){        var direct=0; 
        e=e || window.event; 
        var direct = e.wheelDelta > 0 ? 1 : -1;//1:向上 ,-1:向下
        alert(direct);
    }    window.onmousewheel=scrollFunc;


喵喵时光机
浏览 145回答 1
1回答

慕斯709654

一个很傻的方法:1、获得鼠标当前位置所在元素(使用document.elementFromPoint)2、检查该元素(el)是否el.scrollHeight==el.offsetHeight && el.scrollWidth==el.offsetWidth,如果是的话,当然就是不可滚动的,否则就是可滚动的3、递归检查该元素的祖先(ancestor)是否可滚动
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript