2014-05-01 73 views
1

我有一個腳本,當按鈕被徘徊會動畫它,所以它彈出,不幸我無法讓它在IE瀏覽器中工作。它使用jQuery並在所有其他瀏覽器中運行。animate()不能在Internet Explorer中工作

請參閱小提琴:http://jsfiddle.net/JHS5g/1/我試圖儘可能模仿我的實際代碼,因此留在了一些周圍的代碼。

$("#main-nav div").hover(function() { 
    $(this).stop().animate({ 
    top: "-40px" 
    }, { queue: false, duration: 200 }); 
}, function() { 
    $(this).stop().animate({ 
    top: "0px" 
    }, { queue: false, duration: 200 }); 
}); 

其實,我認爲這是一個HTML或CSS錯誤這就是導致它打破,因爲當我測試它自己的jQuery代碼它的工作原理,但我只是不能找出它。

我注意到小提琴是紅色的一些html標記,表明一個錯誤?但我再次看不到它。

在此先感謝您的幫助

回答

2

你可以得到它通過增加display: inline-block到div您設置動畫

我已經更新到你的工作JS Fiddle

+0

超棒的作品 –

+0

謝謝你的工作! – Goodbytes

0

刪除jQuery。 Updated fiddle

您試圖在CSS中使用基本的:hover psuedoclass和transition CSS屬性非常簡單。

最好的部分是?它甚至可以在舊版本的IE中工作(直到IE7 - 在那個:hover不適用於不是<a>的元素之前),但它在IE8或更低版本中不會生成動畫。

雖然沒問題,但因爲過渡是視覺上的,而非功能性的,因此不是必需的。此外,它爲那些足夠聰明的人禁用Windows Update提供了一點獎勵。

+0

我完全同意,但它是相當多從客戶給我的唯一要求導航按鈕「彈出,就像我的舊網站」,當我要求客戶端測試谷歌瀏覽器的功能時(爲了保證演示效果的100%兼容性),我收到了回覆「我不知道是什麼你正在談論「所以我別無選擇,只能確保它能夠回到IE 8(螺絲IE 7!),而jquery更安全。 – Goodbytes

相關問題