簡體   English   中英

在IE11中加載Facebook SDK會破壞CSS動畫

[英]Loading Facebook SDK in IE11 breaks CSS animations

加載Facebook SDK之后,我的CSS動畫在IE11中中斷了。

這是一個測試案例: http : //tremby.net/dump/ie11test.html

單擊按鈕可在其上切換一個類,該類通過CSS動畫稍微旋轉按鈕。 五秒鍾后,Facebook SDK加載完畢。 在Firefox,Chrome和IE10上,該按鈕在此之后繼續起作用,但是在IE11上,添加類后,動畫將不再播放。

我無法在JSFiddle中重現該問題。

知道是什么原因造成的嗎? IE11或Facebook的SDK一定有問題,但是我需要找到一種解決方法。

這很可能與Facebook共享按鈕破壞IE11中的CSS動畫有關,后者看起來非常相似。

我正打算將其作為錯誤發布到Facebook錯誤跟蹤器上,發現該錯誤已在此報告,尚無修復:

這與Facebook使用document.createStyleSheet ,並且IE11中不再存在此功能。

可以對該函數進行多填充以解決該問題。 可以在https://gist.github.com/harriha/7778849#comment-966352中找到對我有用的polyfill,如下所示:

(function() {
  // A polyfill for createStyleSheet() which isn't present in IE11 anymore.
  // This makes the current Facebook JS SDK to work so that it won't kick
  // IE11 out of the "responsive mode" (= @-ms-viewport still works).
  // Note: this should actually return a CSSStyleSheet object, but this
  // works as well here as long as at least the el is returned.
  document.createStyleSheet = document.createStyleSheet || function(url) {
    var el = document.createElement("style");
    el.href = url;
    document.getElementsByTagName("head")[0].appendChild(el);

    return el;
  };
})();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM