2011-12-14 88 views
0

我需要動態地加載一個外部css(無服務器端),之後我將執行一些功能。等待css的加載

我該如何等待css加載?

謝謝。

回答

1

您可以使用jQuery get方法。試試這個

$.get("stylesheetUrl", function(contents){ 
    $("<style type=\"text/css\">" + contents + "</style>").appendTo(document.head); 
    //Call your functions here 
}); 
+1

該css不是服務器端,這是行不通的,因爲Access-Control-Allow-Origin不允許。 – keepyourweb 2011-12-14 14:58:01

0
//append your css first 
    $('head').append('<link rel="stylesheet" href="http://cdn.sstatic.net/stackoverflow/all.css?v=d4a5c7ca0d4c" type="text/css" />'); 

    var wait_here = setInterval(function(){ 
     if($(".element").css("float")=== "left"){ 
     clearInterval(wait_here) 
     // Put your function here which needs to be executed after css load 
     } 
    },50) 

,其中「50」是間隔時間會不斷循環,直到的CSS加載。在if()部分中,檢查是否應該在元素加載時影響元素的任何css。

**如果您不需要追加,請僅使用第二部分。