我想运行一个包含flash的网站.显然,flash元素无法在iPhone,iPod和iPad上运行.由于这个事实,我想为这些设备创建一个CSS文件.我主要担心iPad,因为我可以使用@media screen其他两个的尺寸属性.
到目前为止我所拥有的是:
var IS_IPAD = navigator.userAgent.match(/iPad/i) != null;
if(IS_IPAD) ({
url: href,
dataType: 'css',
success: function(){
$('<link rel="stylesheet" type="text/css" href="'+css/ipad.css+'" />').appendTo("head");
}
});
Run Code Online (Sandbox Code Playgroud)
什么不在这里工作?
你可以这样做:
var is_ios = /(iPad|iPhone|iPod)/g.test( navigator.userAgent );
这将返回真或假.
然后:
if(is_ios)
{
$('<link rel="stylesheet" type="text/css" href="css/ipad.css" />').appendTo("head");
};
Run Code Online (Sandbox Code Playgroud)
更新:
一种不同的方法,而不是使用userAgent检测,将测试浏览器支持.你可以用这样的jQuery做到这一点:
$('html').addClass(typeof swfobject !== 'undefined' && swfobject.getFlashPlayerVersion().major !== 0 ? 'flash' : 'no-flash');
Run Code Online (Sandbox Code Playgroud)
这是一种" Modernizr "风格的方式,可以html在文档的标记中添加一个类,所以在你的CSS中你可以这样做:
html.flash .element {
/*Do something here if flash if enabled*/
}
html.no-flash .element {
/*Do something different here if flash if not available*/
}
Run Code Online (Sandbox Code Playgroud)