2014-01-21 32 views
2

當CDN關閉時,是否有通用的解決方案來加載本地備份CSS文件?如何在CDN關閉時加載通用CSS文件的本地副本?

<link rel="stylesheet" href="//somecdn.com/somefile.css"/> 
<!-- load a local file here if needed --> 

我有5個這樣的CSS文件來自不同的CDNs,並且加載的順序很重要。

我碰到迄今爲止傳來的解決方案不盡如人意:

  • 創建一個虛擬div,並用它來檢查應該已經加載
  • 檢查document.styleSheets[0].cssRules.length一些財產 - 這就是跨站點訪問和一些瀏覽器不允許

回答

0

如果CDN是不可靠的,那麼就不要使用它們。

有沒有簡單的方法來加載像there is for JS files備份CSS。切換到始終加載本地CSS,但繼續使用CDN for JS(使用本地備份)。

0

div屬性檢測作爲第一步。選擇可靠工作的東西。例如,身高和可見度可能運作良好。

根據檢測結果,你可以決定要動態地加載本地的CSS:

csl=document.createElement('link'); 
    csl.setAttribute('rel','stylesheet'); 
    csl.setAttribute('type','text/css'); 
    csl.setAttribute('href','mylocalcss.css'); 
    document.getElementsByTagName("head").item(0).appendChild(csl); 
相關問題