从运行JavaScript中排除iOS

时间:2012-06-18 03:53:18

标签: javascript iphone html

我正在使用文章QueryLoader2 – Preload your images with ease中的预加载器。在大多数桌面浏览器中运行良好,但我在iOS上遇到问题。

有没有办法排除运行脚本的iOS设备而不提供不同的页面?

这是我的代码:

$(document).ready(function () {
    $("body").queryLoader2({
        barColor: "#FFFFFF",
        backgroundColor: "#000000",
        percentage: true,
        barHeight: 1,
        completeAnimation: "grow",
        minimumTime: 1000
    });
});

由于某些原因,我无法让window.addEventListener与iOS合作。

2 个答案:

答案 0 :(得分:2)

您可以检查用户代理字符串。

if(!((navigator.userAgent.match(/iPhone/i)) || 
   (navigator.userAgent.match(/iPod/i)) ||
   (navigator.userAgent.match(/iPad/i)))) {
    // do non iOS stuff here
}

您的代码看起来像

$(document).ready(function () {
    if(!((navigator.userAgent.match(/iPhone/i)) || 
      (navigator.userAgent.match(/iPod/i)) ||
      (navigator.userAgent.match(/iPad/i)))) {

        $("body").queryLoader2({
            barColor: "#FFFFFF",
            backgroundColor: "#000000",
            percentage: true,
            barHeight: 1,
            completeAnimation: "grow",
            minimumTime: 1000
        });
    }
});

我还会查看该页面上提供的iOS代码,看看是否可以解决您的问题。

window.addEventListener('DOMContentLoaded', function() {
    $("body").queryLoader2();
});

答案 1 :(得分:1)

检查Iphone用户代理字符串并根据该结果有条件地预加载图像