【发布时间】:2014-04-22 10:41:54
【问题描述】:
我发现下面的代码。
它工作得很好。但是我发现它在移动设备上不起作用。
我知道document.getElementsByTagName("head")[0].appendChild 这个代码有问题...移动浏览器不允许使用该代码。
所以通常人们使用document.head。
所以我将代码 document.getElementsByTagName("head")[0].appendChild 更改为 document.head.appendChild。但它仍然无法在移动设备上运行。
我该怎么办?
function detectIE() {
var ua = window.navigator.userAgent;
var msie = ua.indexOf('MSIE ');
var trident = ua.indexOf('Trident/');
if (msie > 0) {
// IE 10 or older => return version number
alert("ie10 or older");
var ss = document.createElement("link");
ss.type = "text/css";
ss.rel = "stylesheet";
ss.href = "css/ie9font.css";
document.getElementsByTagName("head")[0].appendChild(ss);
return false;
}
if (trident > 0) {
// IE 11 (or newer) => return version number
var rv = ua.indexOf('rv:');
alert("ie11");
var ss = document.createElement("link");
ss.type = "text/css";
ss.rel = "stylesheet";
ss.href = "css/ie9font.css";
document.getElementsByTagName("head")[0].appendChild(ss);
return false;
}
// other browser
var rv = ua.indexOf('rv:');
alert("other");
var ss = document.createElement("link");
ss.type = "text/css";
ss.rel = "stylesheet";
ss.href = "css/font.css";
document.getElementsByTagName("head")[0].appendChild(ss);
return false;
}
detectIE();
效果很好。但是我发现它在移动设备上不起作用。
我知道document.getElementsByTagName("head")[0].appendChild 这个代码有问题......移动浏览器不允许使用那个代码。
所以通常人们使用'document.head'。
所以我将代码 document.getElementsByTagName("head")[0].appendChild 更改为 document.head'.appendChild。但它仍然无法在移动设备上运行。
我该怎么办?
【问题讨论】:
标签: javascript css dom browser