zishu's blog

zishu's blog

一个热爱生活的博主。https://zishu.me

在IE10中,符號不能留白。

$("#test").click(function () {
    $('html,body').animate({ 'scrollTop': '0' }, 500)
})

這行程式碼使用的是 jquery 的寫法,一個 500 毫秒的動畫,這樣寫在 Chrome 瀏覽器等沒問題,可以正常運行。

但是今天在寫專案的過程中,要求程式碼兼容到 IE10,沒辦法,被迫在 IE 瀏覽器下運行,結果發現這行程式碼會報錯。這是怎麼回事呢?

簡單分析一下,這有點類似 js 中定時器的寫法,setimeout,兩個參數,分別代表指定的時間,和定時時間。

而 animate 是動畫的屬性,這個時間共花費 500 毫秒執行完畢。但是這個不是重點,為什麼會報錯呢?

這時候我注意到 500 後面的,,我突然想到一種可能,先把,刪掉。果然不出我所料。控制台不會報錯了。

我猜測,這是由 IE 的機制引起的,瀏覽器識別到,的時候,會自動默認後面跟有語句,但是如果空著不寫,與瀏覽器預期的後果不同,就會產生報錯。可能 IE 內核要求也比較嚴格吧。

載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。