2015-12-28 41 views
0

具有设置尺寸(常量)的容器(div),隐藏溢出(表格)。对角线滚动在firefox和Safari浏览器上工作正常,但Chrome和Opera不同时滚动两个尺寸。为什么?对角线溢出滚动不适用于铬或歌剧

小提琴: https://jsfiddle.net/coolcatDev/kd75zyzk/1/

HTML:(为简单起见,只有一个行级别>无Y型溢出)

<div class="wrap"> 
<table> 
<tr> 
    <td>Jill</td> 
    <td>Smith</td> 
    <td>50</td> 
     <td>Jill</td> 
    <td>Smith</td> 
    <td>50</td> 
     <td>Jill</td> 
    <td>Smith</td> 
    <td>50</td> 
     <td>Jill</td> 
    <td>Smith</td> 
    <td>50</td> 
     <td>Jill</td> 
    <td>Smith</td> 
    <td>50</td> 
     <td>Jill</td> 
    <td>Smith</td> 
    <td>50</td> 
    </tr> 
    </table> 
    </div> 

CSS:

.wrap{ 
    height:300px; 
    width:300px; 
    overflow: scroll; 
} 

回答

2

Google搜索为你:

Firefox和Chrome为鼠标滚轮使用两种不同的JavaScript事件,并且delta属性在每个中都有不同的名称。幸运的是,有一个简单的变通办法,这将足以在大多数情况下:

// For Chrome 
window.addEventListener('mousewheel', mouseWheelEvent); 

// For Firefox 
window.addEventListener('DOMMouseScroll', mouseWheelEvent); 

function mouseWheelEvent(e) { 
    var delta = e.wheelDelta ? e.wheelDelta : -e.detail; 
} 

link