दिलचस्प पोस्ट
रीडटाइम में उपप्रोसेस से स्टडआउट को पकड़ना मैं नोडा समय से आईएएनए / ओल्सन समय क्षेत्रों की सूची कैसे पॉप्युलेट करूँ? क्या स्थिर तरीकों का एक बहुत बुरा उपयोग कर रहा है? विखंडन के भीतर ViewPager टैब का पता लगाएँ नॉर्मल में 1D एरे के लिए रोलिंग विंडो? यह फ़्लोटिंग-पॉइंट गणना अलग-अलग मशीनों पर अलग-अलग परिणाम क्यों देती है? "औसत पर" (इटरेटर) एल्गोरिदम, सांख्यिकीय मध्य, मोड, तिरछा, कर्टोसिस का आकलन करने के लिए? यह पता लगा रहा है कि PHP चर एक संदर्भ / संदर्भित है प्रोग्राम की मशीन पर कोर की संख्या का पता लगाएं मॉकिको का उपयोग कैसे करें जब हम नकली वस्तु को कक्षा के एक उदाहरण के पास नहीं कर सकते डीबगर से निष्पादन को रोकना और जारी रखना संभव है? जेपीएनएल ने फिर से रंगना समस्या ईपीप्लस के साथ एक्सेल करने के लिए डेटाटाइल निर्यात करें क्या $ मिलियन का एक संस्करण है जो कॉल वापस उपयोग नहीं करता है? आईफोन में ब्लूटूथ (चालू / बंद) प्रोग्रामैटिक रूप से कैसे प्राप्त करें I

पता लगाएँ कि डिवाइस आईओएस है

मैं सोच रहा हूं कि क्या यह पता लगाना संभव है कि ब्राउज़र आईओएस पर चल रहा है या नहीं, जैसा कि आप मॉडर्नआइज़र के साथ पहचान कर सकते हैं (हालांकि यह स्पष्ट रूप से सुविधा का पता लगाने के बजाय डिवाइस का पता लगाने है)।

आम तौर पर मैं इसके बजाय फीचर डिटेक्शन का पक्ष रखूंगा, लेकिन मुझे यह पता लगाना होगा कि आईओएस आईडब्ल्यूएफ़ / आईफोन / नॉन-फ्लैश डिवाइस के साथ यूट्यूब एपीआई काम नहीं कर रहा है, इस वजह से आईओएस की वजह से वीडियो को संभालते हैं।

वेब के समाधान से एकत्रित समाधान "पता लगाएँ कि डिवाइस आईओएस है"

आईओएस का पता लगा रहा है

मैं उपयोगकर्ता एजेंट सूँघने का एक प्रशंसक नहीं हूँ, लेकिन यहां बताया गया है कि आप इसे कैसे करेंगे:

var iOS = /iPad|iPhone|iPod/.test(navigator.userAgent) && !window.MSStream; 

नापसंद navigator.platform पर निर्भर एक अन्य तरीका। navigator.platform :

 var iOS = !!navigator.platform && /iPad|iPhone|iPod/.test(navigator.platform); 

iOS या तो true या false

क्यों नहीं MSTstream

माइक्रोसॉफ्ट ने userAgent के userAgent में आईफोन को इंजेक्ट किया ताकि किसी भी तरह से जीमेल को आज़माने और बेवकूफ़ बना सके। इसलिए हमें इसे बाहर करना होगा इस बारे में और यहां अधिक जानकारी

नीचे IE11 का अपडेट किया गया userAgent (विंडोज फोन 8.1 अपडेट के लिए इंटरनेट एक्सप्लोरर) है:

मोज़िला / 5.0 (मोबाइल; विंडोज फोन 8.1; एंड्रॉइड 4.0; एआरएम; ट्रिडेंट / 7.0; टच; आरवी: 11.0; आईईमोबाइल / 11.0; नोकिया; ल्यूमिया 9 30) जैसे आईफोन ओएस 7_0_3 मैक ओएस एक्स ऐप्पल वेबकैट / 537 (केएएचटीएमएल, जिएको जैसे) मोबाइल सफारी / 537


नियमित एक्सप्रेशंस का उपयोग किए बिना आसानी से और अधिक डिवाइस जोड़ें:

 function iOS() { var iDevices = [ 'iPad Simulator', 'iPhone Simulator', 'iPod Simulator', 'iPad', 'iPhone', 'iPod' ]; if (!!navigator.platform) { while (iDevices.length) { if (navigator.platform === iDevices.pop()){ return true; } } } return false; } 

iOS() या तो true या false

नोट: दोनों navigator.userAgent । यूजर और navigator.platform प्लेटफ़ॉर्म को उपयोगकर्ता या एक ब्राउज़र एक्सटेंशन द्वारा नकली किया जा सकता है।


आईओएस संस्करण का पता लगा रहा है

आईओएस संस्करण का पता लगाने का सबसे आम तरीका उपयोगकर्ता एजेंट स्ट्रिंग से पार्स कर रहा है । लेकिन इसमें सुविधा का पता लगाने के निष्कर्ष भी हैं ;

हम एक तथ्य के लिए जानते हैं कि matchMedia API में history API शुरू की गई थी – matchMedia API में webAudio APIiOS6 में WebSpeech APIWebSpeech API में WebSpeech API और इसी तरह।

नोट: निम्न कोड विश्वसनीय नहीं है और इनमें से किसी भी HTML5 फीचर को नए आईओएस संस्करण में पदावनत किया जाएगा। आपको चेतावनी दी गई है!

 function iOSversion() { if (/iPad|iPhone|iPod/.test(navigator.userAgent) && !window.MSStream) { if (!!window.indexedDB) { return 'iOS 8 and up'; } if (!!window.SpeechSynthesisUtterance) { return 'iOS 7'; } if (!!window.webkitAudioContext) { return 'iOS 6'; } if (!!window.matchMedia) { return 'iOS 5'; } if (!!window.history && 'pushState' in window.history) { return 'iOS 4'; } return 'iOS 3 or earlier'; } return 'Not an iOS device'; } 

यदि आप मॉडर्नर्जर का उपयोग कर रहे हैं, तो आप इसके लिए कस्टम परीक्षण जोड़ सकते हैं।

इसका कोई फर्क नहीं पड़ता कि आप किस खोज मोड को उपयोग करने का निर्णय लेते हैं (उपयोगकर्ता एगेंट, नेविगेटर.वेंडर या नेविगेटर.प्लेटेट), आप इसे बाद में आसान उपयोग के लिए हमेशा लपेट सकते हैं

 //Add Modernizr test Modernizr.addTest('isios', function() { return navigator.userAgent.match(/(iPad|iPhone|iPod)/g); }); //usage if (Modernizr.isios) { //this adds ios class to body Modernizr.prefixed('ios'); } else { //this adds notios class to body Modernizr.prefixed('notios'); } 

यह कस्टम मॉडर्निज्र परीक्षण है: https://gist.github.com/855078

यह चर _iOSDevice को सही या गलत सेट करता है _iOSDevice

 _iOSDevice = !!navigator.platform.match(/iPhone|iPod|iPad/); 

आईओएस उपकरणों पर उपयोगकर्ता-एजेंटों का कहना है कि उनमें आईफोन या आईपैड हैं। मैं उन कीवर्ड के आधार पर केवल फिल्टर करता हूं

मैंने यह कुछ साल पहले लिखा था, लेकिन मेरा मानना ​​है कि यह अभी भी काम करता है:

 if(navigator.vendor != null && navigator.vendor.match(/Apple Computer, Inc./) && navigator.userAgent.match(/iPhone/i) || (navigator.userAgent.match(/iPod/i))) { alert("Ipod or Iphone"); } else if (navigator.vendor != null && navigator.vendor.match(/Apple Computer, Inc./) && navigator.userAgent.match(/iPad/i)) { alert("Ipad"); } else if (navigator.vendor != null && navigator.vendor.match(/Apple Computer, Inc./) && navigator.userAgent.indexOf('Safari') != -1) { alert("Safari"); } else if (navigator.vendor == null || navigator.vendor != null) { alert("Not Apple Based Browser"); } 

एक सरल, संस्करण को बढ़ाने के लिए आसान

 var iOS = ['iPad', 'iPhone', 'iPod'].indexOf(navigator.platform) >= 0; 

जहां कहीं भी संभव हो Modernizr परीक्षण जोड़ते हुए आपको किसी डिवाइस या ऑपरेटिंग सिस्टम के बजाय एक फीचर के लिए एक परीक्षण जोड़ना चाहिए। आईफोन के लिए दस टेस्ट्स सभी टेस्ट को जोड़ने में कुछ भी गलत नहीं है यदि यह वही है जो इसे लेता है। कुछ चीजें केवल सुविधा का पता लगाया नहीं जा सकता

  Modernizr.addTest('inpagevideo', function () { return navigator.userAgent.match(/(iPhone|iPod)/g) ? false : true; }); 

उदाहरण के लिए आईपैड (आईपैड नहीं) वीडियो वेबपेज पर इनलाइन नहीं खेला जा सकता, यह पूर्ण स्क्रीन खोलता है इसलिए मैंने एक परीक्षण 'नो पेज-वीडियो' बनाया

आप इसका उपयोग सीएसएस में कर सकते हैं ( .no-inpagevideo क्लास जोड़ता है। .no-inpagevideo में वीडियो <html> टैग अगर परीक्षण विफल रहता है)

 .no-inpagevideo video.product-video { display: none; } 

यह आईफ़ोन पर वीडियो छिपाएगा (मैं वास्तव में इस मामले में क्या कर रहा हूं वीडियो चलाने के लिए ऑनक्लिक के साथ एक वैकल्पिक छवि दिखा रहा है – मैं सिर्फ डिफॉल्ट वीडियो प्लेयर और प्ले बटन दिखाने के लिए नहीं चाहता हूं)।

जैसा कि ऊपर उल्लेखित है, आप यह निर्धारित करने के लिए कि आप आईओएस पर चल रहे हैं या नहीं उपयोगकर्ता एजेंट का उपयोग कर सकते हैं। विभिन्न किनारे मामलों के लिए – पहले से ही इसका ध्यान रखा गया है 🙂 मैंने यह मोबाइल-मोबाइल घटक लिखा है जो पता लगा सकता है कि आप एक आईओएस डिवाइस पर चल रहे हैं या नहीं, और अन्य प्लेटफार्म भी हैं, और विभिन्न किनारे वाले मामलों को ध्यान में रखते हैं।

इसे आयात करने के लिए स्वतंत्र महसूस करें और इन उदाहरणों में दिखाए अनुसार उपयोग करें:

 isMobile.iOS() => true/false isMobile.iPhone() => true/false isMobile.iPad() => true/false isMobile.Android() => true/false isMobile.Windows() => true/false isMobile.any() => true/false 

आईओएस संस्करण का पता लगाने के लिए, एक उपयोगकर्ता एजेंट को इस तरह जावास्क्रिप्ट कोड के साथ विद्रोह करना होगा:

  var res = navigator.userAgent.match(/; CPU.*OS (\d_\d)/); if(res) { var strVer = res[res.length-1]; strVer = strVer.replace("_", "."); version = strVer * 1; } 

var isiOSSafari = (navigator.userAgent.match(/like Mac OS X/i)) ? true: false;