我想问问Chrome下滚轮滚动事件的问题。 我这写了个tab切换绑定了滚轮事件,问题是每个tab里面的div都会有滚动。 我想问的是如何判断鼠标所在区域 如果不在tab里面的div滚动切换tab生效。如果在div里面如果div自身有滚动不生效,没有滚动的话则生效。
function scrollFunc(e){
var direct=0;
e=e || window.event;
var direct = e.wheelDelta > 0 ? 1 : -1;//1:向上 ,-1:向下
alert(direct);
}
window.onmousewheel=scrollFunc;
一个最傻X的方法:
1、获得鼠标当前位置所在元素(使用
document.elementFromPoint
)2、检查该元素(el)是否
el.scrollHeight==el.offsetHeight && el.scrollWidth==el.offsetWidth
,如果是的话,当然就是不可滚动的,否则就是可滚动的3、递归检查该元素的祖先(ancestor)是否可滚动