问问题
634 次
2 回答
2
于 2013-03-16T04:28:44.910 回答
1
我能够覆盖元素的默认鼠标滚轮行为select[multiple]
以适当地滚动溢出的元素,而无需修改 DOM 结构。
加载 DOM 后:
var selects = document.getElementsByTagName( 'select' );
for( var i = 0, len = selects.length; i < len; ++i )
{
if( selects[ i ].hasAttribute( 'multiple' ) )
{
selects[ i ].onmousewheel = function( event )
{
event.preventDefault( );
this.form.scrollTop -= event.wheelDelta;
};
}
}
完全浏览器兼容性可能还有一些额外的要求——比如使用event.detail
而不是——event.wheelDelta
但就我的目的而言,这就足够了。
于 2013-03-17T17:43:13.297 回答