IE, all versions is not tolerant of common errors made by PHP programmers. Here is a list of Javascript syntax not accepted by IE, for all functions, including AJAX:
(These IE Javascript syntax errors are not errors in Opera, Chrome and Firefox.)
you cannot set a default variable value in function declaration parameters function thisFunction(something='x'){ thingy.here;} is not allowed and will read as an undeclared function when thisFunction() is called.
Passing objects as function parameters can have unexpected results: function(someObject) may or may not work depending on the context.
undeclared variables stop the script
event.preventDefault(); cannot be called inside the called function, and will stop the script
event.preventDefault(); must be declared first, in the event reference before all other functions... this is not true on other browsers. So IE must operate asynchronously by default...
May not be expected when PHP programmers first learn to enjoy the synchronous character of Javascript as lesson #1 in the language. This example does not work (does not work) in the 'a' tag when put directly into the tag of a link
onclick="function() {
if(typeof someFunction === 'function') {
event.preventDefault();
someFunction('anyParameter');
};"
When you are using the same code on a page that doesn't implement or declare the function someFunction(). what a waste of time!
onclick='clickChild(this);' doesn't work on IE... and I don't know why. It will actually stop a contained link and nothing will happen. Seems to contradict the above behavior of preventDefault which only works as the first function in an event reference, and if not called first a containing link will be followed. So inconsistent logic in IE.
---as of today, January 21, 2017, in today's Google Chrome update, the above function also does not work in Chrome.
In forms, the 'button' tag does not return the value correctly for form submission. This may be fixed in new IE versions,or it may not be. For my current project: yad1.org the button tag is required for multilingual submission button names that require the same value for all languages.
Conclusion: IE should be removed from Windows and forgotten forever.
Real waste of time debugging. IE needs to get in touch with the programmer friendly world of Javascript.
launchBird()now, and it's directly after the div#bird containing the ad. Sorry for that...