1. 程式人生 > >jquery的slideUp、slideDown在IE中的閃動bug-完美解決

jquery的slideUp、slideDown在IE中的閃動bug-完美解決

        最近用到了jquery的一個收縮特效,但是發現有個bug,就是slideUp的時候隱藏完畢會閃動一下,這個在IE下是有問題的,谷歌火狐沒問題,這個網上搜索了很多資料,很多都說沒有增加html 的w3c說明之類的,其實加上也是白搭的

       這個特效產生閃動的bug原因是:由於容器使用了position的relative或者absolute導致當然我們不用這個屬性在佈局的時候就會遇到很大麻煩,所以我自己研究了一種解決方案,即使用了position,又能解決閃動,研究jquery原始碼結果顯示slideUp這個函式內部呼叫的是animate這個動畫函式,所以,我們不直接呼叫slideUp這個特效,改成呼叫animate這個函式,當然直接改成呼叫animate也是有閃動現象,下面是最關鍵的一步

:animate呼叫的時候增加一個透明的設定,例如:ulObj.animate({height: 'toggle', opacity: 'toggle'}, speed);其中opacity: 'toggle'就是設定透明漸變,這樣等圖形收起之後就變為完全透明,回閃那一下是透明的,所以就看不到了,我自己試過,非常完美,希望給大家帶來幫助