在Web開發中,我們常常使用Ajax技術來實現局部刷新,減少頁面的刷新次數,提升用戶體驗。但是,在這個過程中,我們有時候需要重新加載CSS文件。那么,在Ajax完成操作之后,如何重新加載CSS呢?
其實,重新加載CSS的方法非常簡單,我們只需要在Ajax的回調函數中動態創建一個link標簽即可。具體操作如下:
function ajaxFunction() { // 創建XMLHttpRequest對象 var xmlHttp; if (window.XMLHttpRequest) { xmlHttp = new XMLHttpRequest(); } else { xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); } // 發送Ajax請求 xmlHttp.onreadystatechange = function() { if (xmlHttp.readyState == 4 && xmlHttp.status == 200) { // Ajax操作完成后,重新加載CSS文件 var head = document.getElementsByTagName("head")[0]; var link = document.createElement("link"); link.rel = "stylesheet"; link.type = "text/css"; link.href = "style.css"; head.appendChild(link); } } xmlHttp.open("GET", "example.php", true); xmlHttp.send(); }
上述代碼中,我們在Ajax的回調函數中創建了一個link標簽,并把它添加到head標簽中。link標簽的href屬性指向我們需要重新加載的CSS文件,rel屬性值為“stylesheet”,type屬性值為“text/css”。
有些開發者可能會使用document.write來實現動態添加CSS文件,但是這樣做并不安全,容易引發一些錯誤,因此建議使用createElement方法來實現CSS文件的動態添加。