2009-12-18 3 views
5

का उपयोग कर IE का ब्राउज़र संस्करण प्राप्त करें I सिस्टम में IE का संस्करण प्राप्त करने के लिए निम्न कोड का उपयोग कर रहा हूं।जावास्क्रिप्ट

var browser = navigator.appName; 
    var b_version = navigator.appVersion; 
    var version = parseFloat(b_version); 
    alert(version); 

लेकिन संस्करण हमेशा आईई^और आईई 7 में मिलता है। मैं सटीक संस्करण कैसे प्राप्त कर सकता हूं?

उत्तर

4

यह आम तौर पर एक अच्छा विचार संस्करण का पता लगाने का उपयोग नहीं है - वास्तव में, यहां तक ​​कि ब्राउज़र का पता लगाने अनुशंसित नहीं है! इसके बजाय, object detection आज़माएं।

+0

यह वास्तव में एक अच्छी तकनीक है। लेकिन क्या कोई प्रदर्शन समस्या है ?? – Sauron

+0

मुझे यकीन है कि वहां नहीं हैं। यह है, जैसा कि मैं इसे समझता हूं, एक "सर्वोत्तम अभ्यास"। –

+0

और यह निश्चित रूप से नियमित अभिव्यक्तियों से जुड़ी कुछ भी तेज है, और शायद स्ट्रिंग स्लाइसिंग भी है। –

-2

इस तरह की कोशिश कुछ:

<script language="javascript"> 
     Event.observe(window, 'load', function() { 
      var el = $("browserName"); 
      var BO = detectBrowser(); 
      if(BO.ie6){ 
       el.innerHTML = "<b>We do not support IE6. Please click <a href=\"http://www.microsoft.com/windows/downloads/ie/getitnow.mspx\">here</a> to upgrade.</b>"; 
      }else{ 
       el.innerHTML = "<b>Thank You for not running IE6.</b>"; 
      } 
     }); 
</script> 
+0

'Event.observe' से कहां से? – Sauron

7

आपको नेविगेटर के कारण 4 मिल गया .appVersion तार इस तरह 4.0 के साथ शुरू होता है।

4.0 (compatible; MSIE 6.0; Windows NT 5.0; ...) 

आप इस तरह करते हैं, तो आप उपरोक्त मामले

alert(navigator.appVersion.match(/MSIE [\d.]+/)) 

के लिए MSIE 6.0 मिल जाएगा आप केवल 6.0 चाहते आप की तरह

alert(navigator.appVersion.match(/MSIE ([\d.]+)/)[1]) 
2

नीचे समारोह isIE रिटर्न कर सकता हैं आईई संस्करण अगर आईई का पता चला है तो झूठा

function isIE() { 
    var myNav = navigator.userAgent.toLowerCase(); 
    return (myNav.indexOf('msie') != -1) ? parseInt(myNav.split('msie')[1]) : false; 
} 

यह the answer here पर वेरोरो द्वारा आधारित है।

संबंधित मुद्दे