jquery - 仅为 iOS 设备添加 CSS 样式表

标签 jquery css ipad

如何添加专用于 iOS 移动设备的样式表?

我想运行一个包含 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");
        }
});

什么在这里不起作用?

最佳答案

你可以这样做:

var is_ios =/(iPad|iPhone|iPod)/g.test( navigator.userAgent );

这将返回 true 或 false。

然后:

if(is_ios)    
{
 $('<link rel="stylesheet" type="text/css" href="css/ipad.css" />').appendTo("head");
};

更新:

另一种方法是测试浏览器支持,而不是使用 userAgent 检测。你可以像这样用 jQuery 做到这一点:

$('html').addClass(typeof swfobject !== 'undefined' && swfobject.getFlashPlayerVersion().major !== 0 ? 'flash' : 'no-flash');

这在“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*/
 }

关于jquery - 仅为 iOS 设备添加 CSS 样式表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19932023/

相关文章:

iphone - 如何让我的应用程序保持超过 10 分钟。在后台?

flash - 如何在 iOs 的 Flash 应用程序中播放视频 (iPhone Packager)

javascript - AJAX 刷新期间丢失 "click"事件

HTML SVG : show element on top of all elements

html - 通过悬停或事件防止文本两个像素偏移?

html - 使绝对位置在移动设备上可滚动

iphone - 如何将相同的 UIButton 添加到 iphone 中所有 View Controller 的导航栏?

javascript - TinyMCE 将项目添加到上下文菜单

jquery - 显示 div 的 x,y 并随着 div 移动更新值

javascript - 如何使用 Javascript/Jquery 将 Child 追加为 tbody 中的第一行并拥有自己的 tbody