如果移动设备禁用某些脚本

14
我希望能够在检测到移动设备时禁用页面头部的某些脚本。
目前我的代码如下:
$(function(){
    var mobile;
    if (window.width <= 479) {
        //don't load these scripts 
    }
    else {
        //load all scripts
    }
});

我正在努力寻找禁用脚本在检测到移动设备宽度时运行的代码。任何帮助或其他想法将不胜感激。


如果 (window.width > 479) { //现在只包括脚本} - Pratik Joshi
谢谢您的快速回复!那是一个更好的想法。我正在努力寻找加载脚本的代码,您有什么想法吗? - user3462744
window.screen.width会给你设备的宽度,这对于移动设备可能更好。我还建议查看Modernizr和它的脚本加载器yepnope.js - Dylan
2个回答

25

请使用以下内容

if( /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent) ) {
 // some code..
}else
{
//Now include js files
}

针对你的第二个问题

使用

if (window.width > 479) {
 $('head').append('<link rel="stylesheet" href="style2.css" type="text/css" />');
}

在这里,您可以包含CSS或JS文件。


2
这个答案来自2014年,现在还是最好的方法吗? :) - Erwin van Ekeren

4
if (/Android|webOS|iPhone|iPad|iPod|BlackBerry/i.test(navigator.userAgent)) {
        // what you want to run in mobile
}

你可以像这样测试是否为移动设备。
如果你只关心宽度:
if ($(window).width() <= 479) {
     do stuff
}

您可以使用这个软件包,也可以选择以下方法。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接