我必须根据用户代理是iPad还是其他加载不同的样式表。我知道,通常来说,检测浏览器并不是最理想的主意,并且可能会在将来的某个时候削弱我们的可维护性。不是我的决定。
因此,这里有一些JavaScript可用来检测用户代理。它不起作用。我可能误会了一些东西。我遇到的错误是红色鲱鱼(对象引用),但仅在执行JavaScript时显示。
$(document).ready(function () {
alert('ready fired');
if (navigator.userAgent.indexOf("iPad") != -1) {
//alert('bleep bloop blop...iPad detected');
var stringToWrite = '<script src=\'\<\%\= ResolveUrl("~/Scripts/iscroll.js") \%\>\' type="text/javascript"><\/script>';
stringToWrite += '<link href=\'\<\%\= ResolveUrl("~/Stylesheets/scrollbar.css") \%\>\' rel="stylesheet" type="text/css" \/>';
stringToWrite += '<link href=\'\<\%\= ResolveUrl("~/Stylesheets/iPadCommon.css") \%\>\' rel="stylesheet" type="text/css" \/>';
alert(stringToWrite);
document.write(stringToWrite);
}
//else
//alert('bleep bloop blop...who cares browser');
});
最佳答案
您可能应该考虑在服务器端检测代理,否则它不适用于禁用了javascript的浏览器。