jquery的slideUp、slideDown在IE中的闪动bug
要是我再不写,对不起国家对不起党啊。也对不起 ucdchina
给我的链接。指点江山的文字就不必多说了,大家都知道没什么实际用处。BOSS开会说,管理人员不下一线直接操作是不能够发现的问题的。所以最近做了一段时间编辑,也做了一些图片,这 2
天又回归到前端。算是重新对自己锻炼吧。
可能做前端的同学都会遇到制作下拉菜单。以前的做法是利用 hover
属性来对另外一个隐藏容器做 display
的变化。随着 js
不断被认知,jquery
丰富的函数库。前端也可以做出有一定效果的下拉菜单。那么用到比较多的就是 slideup
以及有关的 slideDown
。
不过在真正制作的时候会出现一些问题,我也遇到了。在IE下,特别是IE6下面体现十分诡异的效果。就是鼠标放在菜单上,下拉菜单自动不停的上下滑动,十分讨厌。到网上搜了下资料,说是这问题是由于容器使用了 position
的 relative
或者absolute
导致。解决方法只有一种:不用 position
定位
鉴于项目本身的要求,不可能不用 position
定位(原因极其复杂)。因此所谓的解决方案是不存在的,于是我猜测异常情况是由于 position
定位造成容器的渲染顺序或layout造成的。后来我尝 试用zoom:1
来触发容器的 hasLayout
,问题解除了。
目前的解决方案也只是我的猜测,存在一定的运气和偶然,如果有同学遇到类似的问题,我们可以深入研究一下。