SORU
20 Kasım 2012, Salı


Modernizr YANİ tespit etmek için kullanmanın yolu doğru mu?

Bu aptal bir soru olabilir, ama Modernizr JS Kütüphanesi bazı tarayıcı özelliklerini göstermek için ne karar vermek için Haritayı kontrol altına almak için kullanmak istedim.

Bir uygulama HTML5 ve Resimleri çıkışları Pano2VR aradım. İOS cihaz kullanıcıları için HTML5 ihtiyacım var.

Ancak, IE "HTML5" çıktı. bu işlemez Onların çıkış CSS3 3D dönüşümler ve WebGL kullanan veya 9 Daha fazla anlaşılan desteklenmeyen görünüyor.

Yani, bu kullanıcılar için Flash sürümünü görüntülemek istiyorum. Bir İFRAME kullanmak ve ya Modernizr komut dosyası veya bir belge ile SRC geçiş yapmayı planlıyordum.doğru İFRAME kod tarayıcı bağlı olarak yaz.

Nasıl algılamak için sadece IE veya IE Modernizr kullanırım neden oluyor? Veya CSS 3d dönüşümleri algılamak için?

Yoksa bunu yapmanın başka bir yolu var mı?

CEVAP
20 Kasım 2012, Salı


Modernizr tarayıcılar gibi algılamak değil, mevcut algılar ve bunu yapmak için çalışıyor ne bütün jist.

Böyle basit bir algılama komut dosyası ekleme ve daha sonra seçiminizi yapmak için kullanmayı deneyebilirsiniz. Sürüm Algılama, gerekli olan her ihtimale karşı ekledim. Eğer sadece IE herhangi bir sürümü kontrol etmek istiyorsanız sadece verici görünebilir.userAgent bir değeri olan "". MSIE

var BrowserDetect = {
        init: function () {
            this.browser = this.searchString(this.dataBrowser) || "Other";
            this.version = this.searchVersion(navigator.userAgent) || this.searchVersion(navigator.appVersion) || "Unknown";
        },
        searchString: function (data) {
            for (var i = 0; i < data.length; i  ) {
                var dataString = data[i].string;
                this.versionSearchString = data[i].subString;

                if (dataString.indexOf(data[i].subString) !== -1) {
                    return data[i].identity;
                }
            }
        },
        searchVersion: function (dataString) {
            var index = dataString.indexOf(this.versionSearchString);
            if (index === -1) {
                return;
            }

            var rv = dataString.indexOf("rv:");
            if (this.versionSearchString === "Trident" && rv !== -1) {
                return parseFloat(dataString.substring(rv   3));
            } else {
                return parseFloat(dataString.substring(index   this.versionSearchString.length   1));
            }
        },

        dataBrowser: [
            {string: navigator.userAgent, subString: "Edge", identity: "MS Edge"},
            {string: navigator.userAgent, subString: "Chrome", identity: "Chrome"},
            {string: navigator.userAgent, subString: "MSIE", identity: "Explorer"},
            {string: navigator.userAgent, subString: "Trident", identity: "Explorer"},
            {string: navigator.userAgent, subString: "Firefox", identity: "Firefox"},
            {string: navigator.userAgent, subString: "Safari", identity: "Safari"},
            {string: navigator.userAgent, subString: "Opera", identity: "Opera"}
        ]

    };
    
    BrowserDetect.init();
    document.write("You are using <b>"   BrowserDetect.browser   "</b> with version <b>"   BrowserDetect.version   "</b>");

O zaman sadece kontrol edebilirsiniz:

BrowserDetect.browser == 'Explorer';
BrowserDetect.version <= 9;

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • DrakeVEVO

    DrakeVEVO

    17 AĞUSTOS 2009
  • nemoking of kinges

    nemoking of

    4 EYLÜL 2009
  • rekjavicxxx

    rekjavicxxx

    28 EKİM 2007