Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

IE 11 browser recognizes itself as Mozilla [duplicate]

I am working on MVC application, .net 4.5 framework, VS 2010. I have a piece of Javascript code that identifies which browser the application is running. If the browser is Firefox then a particular block of code will be executed if not another block code will get executed. With IE 11 I am having a weird problem. The browser (ie 11) recognizes itself as Mozilla.

javascrip code :

 if ($.browser.mozilla) {
      if (location.pathname == "/Stats/Reports") {            // This is for local env.
      $("#prntCss").attr("href", "../../../Content/SitePrint_FF.css");
            }
            else {                                                 
      $("#prntCss").attr("href", "../../Content/SitePrint_FF.css");
      $("#rptPrntCss").attr("href", "../../Content/reportPrintStyles_FF.css");
            }

enter image description here

like image 631
BumbleBee Avatar asked Jan 03 '14 19:01

BumbleBee


4 Answers

Yes. IE 11 doesnt say it is IE anymore, it says it is Mozilla.

Althoug, all IE versions respond the word Trident (its layout engine) in all of its versions.

So something like this could work in your javascript

<script type="text/javascript">
    CheckIE();
    function CheckIE()
    {
    var Browser;
    Browser = navigator.userAgent;
    if (Browser.indexOf("Trident") == -1)
    {
        //WHATHEVER YOU WANT IF IT IS NOT INTERNET EXPLORER
    }
    }
</script>
like image 119
Ricardo Polo Jaramillo Avatar answered Oct 10 '22 04:10

Ricardo Polo Jaramillo


Yes, it does:

The compatible ("compatible") and browser ("MSIE") tokens have been removed.

...

These changes help prevent IE11 from being (incorrectly) identified as an earlier version.

Still there are some ways to detect it (search for "How to detect ie11"), but your best bet is to remove browser-detection code at all.

like image 35
Andrei Avatar answered Oct 10 '22 05:10

Andrei


This is because IE 11 has a different style of user agent strings then previous versions of IE

http://msdn.microsoft.com/library/ms537503.aspx

User-Agent: Mozilla/5.0 (Windows NT 6.3; Trident/7.0; rv:11.0) like Gecko
like image 34
Culyx Avatar answered Oct 10 '22 03:10

Culyx


Take a look at User agent string of IE 11: http://msdn.microsoft.com/en-us/library/ie/hh869301(v=vs.85).aspx

Now it says:

Mozilla/5.0 (Windows NT 6.3; Trident/7.0; rv:11.0) like Gecko

And more details: http://www.nczonline.net/blog/2013/07/02/internet-explorer-11-dont-call-me-ie/

I think that this is the reason.

like image 31
vmg Avatar answered Oct 10 '22 04:10

vmg