我想链接到移动设备的某个样式表,而另一个用于桌面的样式表,因为现在一些手机的像素密度/大尺寸问世,使用媒体查询并不总是包含我想要的所有手机到。
我想运行以下javascript:
if( /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent) ) {
// some code..
}
但我需要一些代码..成为一个HTML链接标记
我不太了解javascript,所以感谢任何帮助。
答案 0 :(得分:3)
您可以使用document.write
if( /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent) ) {
document.write('<link rel="stylesheet" type="text/css" href="//cdn.sstatic.net/stackoverflow/all.css?v=884f021ebd40">');
}
确保将代码放在要包含css的位置。
请注意,它有一些drawbacks
答案 1 :(得分:2)
使用纯JavaScript,如果您的移动用户代理正则表达式评估为head
,则可以在true
中插入样式表:
if( /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent) )
{
link=document.createElement('link');
link.href='put your URL here';
link.rel='stylesheet';
document.getElementsByTagName('head')[0].appendChild(link);
}
答案 2 :(得分:1)
Jquery的:
$(document.append( /* your link here */ );
Native JS:
document.getElementById('some-target').innerHTML = /* your link here */;
作为ysrb答案的替代方案:
var link = document.createElement('link');
link.type='text/css';
link.href='your.css';
link.rel='stylesheet';
document.getElementsByTagName('head')[0].appendChild(link);