CKEditor was working properly in Internet Explorer while developing our Wicket application. After deployment to our demo server it wasn’t working anymore. We had no issues with FireFox/Chrome or Safari. First we thought it had to do with some timing issues but after a lot of debugging we found out the issue (and of course the solution 😉 ).
The problem was that CKEditor determines via a ‘conditional compilation’ whether the current browser is Internet Explorer or another one.
The CKEditor code (found in env.js) looked like this:
ie : /*@cc_on!@*/false
In our case, when we used IE, this flag was always false which was incorrect. It should have been set to true via the ‘conditional compilation’: @cc_on!
This is done in the Application class:
Wicket stripped out the conditional compilation (!!) to:
ie : false
This was the reason why it wasn’t working in Internet Explorer.
Note: We used CKEditor 3.6.2 in combination with Wicket 1.4.18
Note 2: More information about ‘conditional compilation’ can be found here .