JQuery

1个成员

IE6下select下拉框不能随滚动条正常滚动解决办法

发表于 2017-02-10 2559 次查看
把select标签放在一个带有滚动条的区域中时,在IE6下,拖动滚动条时,select选择框不能随着滚动条正常滚动,就像被卡住了一样,用鼠标点击select下拉框才能恢复正常。

经过试验,在IE6下出现这个问题的最精简代码如下:

 代码如下 复制代码

<div style="height:60px;overflow:auto;filter:alpha(opacity=0)">   <select><option>a</option><option>b</option></select>   <select><option>a</option><option>b</option></select> <select><option>a</option><option>b</option></select> <select><option>a</option><option>b</option></select> </div>

只要去掉“filter:alpha(opacity=0)”这句样式,IE6中的问题就解决了,此处的问题与opacity的值无关,而是与是否有这句话有关。

下面给出一个js处理方法来去掉这句样式:

 代码如下 复制代码
if(!jQuery.browser.opacity){
//判断是否为IE6浏览器,因为IE6没有opacity这个属性
try{ this.boxy.get(0).style.filter = '';
//把filter相关的都置为空
}catch(ex)
{}
}

而在用ietester调试的过程中,不论是不是加这句样式,都是没有问题的,因为ietester中的ie6有一个bug,是filter会失效,刚好,bug上再加上bug,就不会出现问题了。

发表回复
你还没有登录,请先登录注册