问题
I am developing a web application using RichFaces / JSF. The application behaved as expected on Safari, Mozilla, Chrome, and IE 9, however, I encountered serious compatibility problems with IE 11.
- When a rich:modalPanel opens up, the dialog and buttons are completely greyed out.
- The h:inputTextArea displays all of the server side code generated as opposed to being empty.
- When I click the rich:calendar icon, it does not popup a calendar, even though I have set popup to true in the attributes.
I do not encounter any of the above problems in any other browser except for IE 11
When I debugged my web application in IE 11 Developer Tools, some messages related to the above mentioned problems were:
- The function is undefined or null: selectNodes (JavaScript)
- RichFaces skin issues
I am running JBoss version 4.2.1.GA and RichFaces version 3.3.2
Thanks.
回答1:
RichFaces 3 is only supported in Internet Explorer ≤ 8. Try using the the Meta Tag http-equiv to set the document mode to IE 8.
http://msdn.microsoft.com/en-us/library/windows/desktop/ff966528(v=vs.85).aspx
Or better yet, upgrade to RichFaces 4 (4.3.4 at the time of this answer) for support on the latest Internet Explorer releases. RichFaces 3 is old!
回答2:
Brian Leathem is right. But if for some other reasons you are forced not to change the compatibility mode, you can try this:
Richfaces3.x fails with IE11 because of missing functions like LOG.debug(""), LOG.warn("") and LOG.error("");
Include a javascript file like this to "override" this functions:
LOG = new Object();
LOG.debug = function(msg)
{
console.log("debug: " + msg);
};
LOG.warn = function(msg)
{
console.log("warn: " + msg);
};
LOG.error = function(msg)
{
console.log("error: " + msg);
};
I tried this in an application that used only the ajax components of richfaces3.x. Maybe using all richfaces taglibs this may not work.
来源:https://stackoverflow.com/questions/21097144/richfaces-compatibility-problems-with-internet-explorer-11