今天处理一个需求,页面的左边大部分内容被一个绝对定位的层给覆盖了,鼠标移动到右边滚动鼠标滚轮可以触发 浏览器滚动条,移动到右边却触发不了。
解决方法:在左边层增加监听事件,判断鼠标是向上滚,还是向下滚,然后触发你需要滚动的内容。
function getOs() {
if(navigator.userAgent.indexOf("MSIE")>0) return "MSIE";
if(navigator.userAgent.indexOf("Firefox")>0) return "Firefox";
if(navigator.userAgent.indexOf("Safari")>0) return "Safari";
if(navigator.userAgent.indexOf("Camino")>0) return "Camino";
if(navigator.userAgent.indexOf("Gecko/")>0) return "Gecko";
}
u = $(".content");
$(".swf")[0].onmouseover = function(){
var len = 50;
var p = this;
var isIE = getOs();
if(isIE == "Firefox")
{
p.addEventListener("DOMMouseScroll",function(e){
e = window.event || e;
e.detail > 0 ? u.scrollTop(u.scrollTop()+len) : u.scrollTop(u.scrollTop()-len);
},false);
}
else
{
p.onmousewheel = function(){
event.wheelDelta > 0 ? u.scrollTop(u.scrollTop()-len) : u.scrollTop(u.scrollTop()+len);
}
}
};