I get reports that a button does not work in my webapp on IE8 (and older). Everything works in IE9, FF and Chrome. The error is triggered in this click-bind:
$("#save_refresh").click(function(e) {
alert('hello world!');
});
This is the html:
<input class='button' type='button' value='Save / Refresh' id='save_refresh' />
When clicking the button in IETester running IE8, the "hello world!" is not shown and I get this error:
Line: 17
Character: 28691
Error:
Code: 0
URL: jquery-1.6.1.min.js
So my question is:
is there anything wrong with my above code OR does anyone know how to debug javascript in older version of IE.
I agree with Quentin. You should download one of Microsoft's Internet Explorer Application Compatibility VPC Images to properly test your code. Paul Irish has a good article on the incompatibilities of Internet Explorer compatibility modes.
The IE9 compatibility modes are unreliable in terms of giving you an accurate picture of how the browser will actually render your page and how your page will behave under that browser. It's like putting a Chevrolet Metro engine in your Chevrolet Aveo so you can test drive the Metro.
That said, when using IE8, you can just hit F12 like in IE9, but with IE7, you need to have a copy of Visual Studio and use the debugger keyword.
Microsoft provide virtual machines with older versions of Internet Explorer for testing.
Using IE9, you can switch to the IE7 or IE8 rendering engine. Press F12 and the developer panel should appear. The header bar has options to switch to the IE7 and IE8 Browser Modes (and their respective notorious Quirks Modes).
For IE6, you'll have to rely on Virtual Machines (as mentioned by Quentin above). Microsoft released XP Mode partly for this.
Internet explorer has compatibility mode for IE7 and IE8 (and even for Quirks mode), it which you can debug most of the issues. Rarely you need true installation of older version of IE
Related
I am using Prime faces form and the exe was being launched on button click through Javascript using ActiveX Object.This functionality was working fine in IE(Internet Explorer) but Edge is not supporting ActiveX Object.
Anybody know the alternate of it?
Earlier We have tried with ActiveXObject and was working fine.
Except VGR's solution, I think there's no programmatical way to open exe file in a modern browser. But if you're using Edge, you can open that page in IE mode. Edge IE mode supports ActiveX controls.
Edge IE mode is designed for organizations that still need IE 11 for backward compatibility with existing websites but also need a modern browser. If you're in an organization, you can configure IE mode policies to make that page always open in IE mode. Or you can just use Edge settings to configure IE mode pages.
I'm developing a mobile site using AngularJS (v 1.5) and it doesn't load in Opera mini. So I started searching and found one article about how Opera mini is a proxy based server and it stripes maximum JavaScript data.
But except that one article, I haven't seen it stated explicitly that Opera mini isn't supported, so I'm a bit confused.
I know Angular 2 is supposed to be released with the view of mobile-first architecture, but does Angular 1.x support opera mini?
Thanks in advance.
It seems Opera mini no longer supported by AngularJS. Check this:
https://mobiforge.com/news-comment/angularjs-to-opera-mini-youre-just-not-worth-it
Edited:
Quoting from AngularJS FAQ (latest stable v1.5):
What browsers does Angular work with?
We run our extensive test suite against the following browsers: the
latest versions of Chrome, Firefox, Safari, and Safari
for iOs, as well as Internet Explorer versions 9-11. See
Internet Explorer Compatibility for more details on supporting legacy
IE browsers.
If a browser is untested, it doesn't mean it won't work; for example, older Android (2.3.x) is supported in the sense that we avoid
the dot notation for reserved words as property names, but we don't
actively test changes against it. You can also expect browsers to work
that share a large part of their codebase with a browser we test, such
as Opera > version 12 (uses the Blink engine), or the various Firefox
derivatives.
I have written a bootstrap page and it works just perfectly on all browsers i have tested....except ie11 with enterprise mode on.
It seems to stretch everything to full width as if my screen is a giant phone. Im sure other things are broken in it but thats the first thing you see.
Anybody have any ideas if Bootstrap and Enterprise mode dont play well? I see some posts asking the question and some responses saying to force ie9 10 or edge mode but that wont work with enterprise mode as it overrides that...ie think.
From MSDN:
Enterprise Mode, a compatibility mode that runs on Internet Explorer 11 on Windows 8.1 Update and Windows 7 devices, lets websites render using a modified browser configuration that’s designed to emulate either Windows Internet Explorer 7 or Windows Internet Explorer 8, avoiding the common compatibility problems associated with web apps written and tested on older versions of Internet Explorer.
And from Bootstrap:
On Windows, we support Internet Explorer 8-11
So if you are running Enterprise mode in IE7 mode, Bootstrap will do all sorts of odd things. The solution would be to run in IE8 mode which may fix a lot of issues or don't add this site to the list.
I built a web app using some technologies that do not work well for IE 8/9. The app functions well in Chrome and Firefox and mostly okay in Standard IE 10 but breaks down in IE 8/9 standard. However, if I switch over to quirks mode for IE 8/9 in the developer console, it works perfectly for some reason. Is there a danger to trying to force quirks mode for older IE?
Well I would say that it's definitely not optimal and you should be trying to fix the errors that prevents you to run in standard mode, however if you are unable to do it and it's the only way to go, I do not see how a working application running in quirks mode could be worse than a failing application in standard mode.
This question has been asked before but that was three years ago and Microsoft Script Debugger is no longer supported.
Are there any more recent tools out there to help me debug Javascript for IE6/7?
You can use Visual Studio for that: http://www.codeproject.com/Articles/18921/Using-Visual-Studio-to-Debug-JavaScript-in-IE
Btw, Microsoft Script Debugger is still available for download : http://www.microsoft.com/download/en/details.aspx?id=22185 and it should still work fine for debugging script in Microsoft browsers.
Interestingly, for IE7 you should be able to use IE9 on Windows 7 or Vista. In IE9, open the developer tools (F12) on the page and switch "browser mode" to "IE7 standard" and "document mode" to "IE7 standard". Now your IE9 displays pages and runs JS just like an IE7 would - and for all purposes and checks it will be seen as IE7 - yet you have all the IE9 debugging tools available to you. This was a god-send for me debugging issues on my site.
Unfortunately though, this doesn't work for IE6, because that mode is not available.
DebugBar is the most actively maintained plugin. There are also a few bookmarklets:
JavaScript Shell
Eval and Dump
Mouseover DOM Inspector