2012-06-18 59 views
4

我目前正在研究一個工具,其中有一個選項卡部分,當單擊一個選項卡時將寬度切換爲最大值和零。包含選項卡和部分的整個div都是固定的,並位於窗口的右上角。這裏有95%,但是當使用$.animate({width: "toggle"});方法將展開部分的寬度切換爲零時發生間歇性閃爍。任何想法可能會導致它?JQuery的動畫「寬度:切換」導致間歇閃爍

這裏是一個小提琴 - http://jsfiddle.net/Tgdrb。我試圖儘可能簡化它,以便它仍然顯示出問題,但並不完全脫離它在頁面上的實際外觀。我也將它標記爲CSS問題,因爲我想知道是否我的CSS結構導致了問題(如果是這樣,我不會感到驚訝)。

謝謝你們!

+0

您是否在Chrome中開發?看起來像一個簡單的Chrome重繪錯誤/問題 - 在FF或IE中似乎沒有發生。 – Robbie

+0

我看到它跳在鉻,通常擺脫邊緣修復了動盪的動畫,但它似乎並沒有幫助 –

+1

@Scott塞爾比 - 我也嘗試了一些其他的調整(刪除重疊等)。無濟於事。所以我只是把它歸結爲另一個Chrome問題,或者jQuery在Chrome中的工作方式。 (在Safari中看起來也很好)。 – Robbie

回答

2

如果有人好奇,有一種方法可以做到這一點,純CSS3。它不會在IE中工作,但它會優雅地降級,所以它工作得非常好。

小提琴這裏:http://jsfiddle.net/Tgdrb/17/

所以,是的,這個問題的答案:Chrome瀏覽器會導致重繪。如果你不喜歡這個效果,找一個更好的方法去做你想做的事。

+0

希望每個人都會發布css3到任何jquery'animate'問題 – 2013-01-15 22:54:16