javascript – 仅为移动设备加载JQuery Mobile脚本

前端之家收集整理的这篇文章主要介绍了javascript – 仅为移动设备加载JQuery Mobile脚本前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个必须在移动设备上正确显示的网页.
为此,我在页面的头部加载了 JQuery Mobile脚本.头标签如下所示:
<head> 
    <title>Page Title</title> 

    <link rel="stylesheet" href="http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css" />
    <script src="http://code.jquery.com/jquery-1.7.1.min.js"></script>
    <script src="http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"></script>
</head>

并在页面的body元素中使用数据角色属性显示东西.
这些页面在移动设备上看起来相当不错,但即使请求来自非移动浏览器,它也以类似的方式看起来.

我想知道如果有人知道一个方法来加载JQuery Mobile脚本,只有当请求来自移动设备.

迄今为止我所尝试的是使用一个检测我的用户代理的函数,如果它是移动设备,则加载该脚本:

function init() {

    if(isMobile()) {
        document.write('<link rel="stylesheet" href="http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css" />');
document.write('<script src="http://code.jquery.com/jquery-1.7.1.min.js"></script>');
dcument.write('<script src="http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"></script>');
    }
}


function isMobile() {

    if(navigator.userAgent.match(/Android/i) || navigator.userAgent.match(/BlackBerry/i) || navigator.userAgent.match(/iPhone|iPad|iPod/i) || navigator.userAgent.match(/IEMobile/i))
            return true;
        return false;
}

解决方法

很难检测您的设备是移动设备还是平板电脑,或者触摸屏幕的巨大屏幕,
但开始

>使用脚本从http://detectmobilebrowsers.com/检测
>使用http://yepnopejs.com/测试

像这样(应该适用于jQuery脚本从http://detectmobilebrowsers.com/):

yepnope({
  test : jQuery.browser.mobile,yep  : 'mobile_specific.js',nope : ['normal.js','blah.js']
});

编辑:

另请参阅https://github.com/borismus/device.js,根据条件加载内容.我不确定它是否允许您加载条件JS文件.

猜你在找的jQuery相关文章