$("head").append('<link href="xxx.css" rel="stylesheet" type="text/css"/>');
我發現此代碼段在IE 8中不起作用?追加CSS在IE8中無法正常工作
$("head").append('<link href="xxx.css" rel="stylesheet" type="text/css"/>');
我發現此代碼段在IE 8中不起作用?追加CSS在IE8中無法正常工作
根據this關於jquery站點的bug報告,在IE8中可能存在一個問題,即將css文件附加到包含相關鏈接的dom。
錯誤的海報表明,添加它可以如下工作:
var style = document.createElement("link");
style.setAttribute("type", "text/css");
style.setAttribute("rel", "stylesheet");
style.setAttribute("href", "xxx.css");
jQuery("head")[0].appendChild(style);
或者說,用一個絕對的URL也可行:
$('<link rel="stylesheet" type="text/css" href="http://yoursite.com/css/xxx.css">').appendTo('head');
雖然他去在附加的css文件中通過@import包含的任何文件也不會按預期加載。
我建議給這些測試用例一掄,看看有什麼載荷爲你和什麼不(如果它的工作原理,你應該得到的HTML窗口中的灰色背景):
方法在OP的問題:從我的回答http://jsfiddle.net/vs5NC/20/
首先可能的解決方案:http://jsfiddle.net/vs5NC/17/
其次從我的回答可能的解決方案:http://jsfiddle.net/vs5NC/19/
如果沒有這些工作,這是可能的次在克里斯富爾斯托的answer一個類似的問題可能是一個可行的解決方案。
第一個解決方案在IE8中效果很好,謝謝! – MMeah 2012-10-31 17:38:47
http://stackoverflow.com/questions/6079702/how-to-append-style-sheets-in-ie-using-jquery – MikeM 2012-08-15 03:01:53
你使用的是什麼版本的jQuery?我相信最新版本不支持IE8 – 2012-08-15 03:02:07
是否有任何理由不能將其添加到您需要的特定頁面的DOM中?在DOM加載後,我從來不喜歡將CSS文件附加到頭部。 – Ohgodwhy 2012-08-15 03:07:05