Opened 7 years ago

Closed 6 years ago

#9918 closed Bug (fixed)

IE7 & IE8 - CKEditor not fully loading on Page refresh

Reported by: Teresa Monahan Owned by:
Priority: Normal Milestone:
Component: General Version: 4.1.1
Keywords: IE7 IE8 IBM Cc: Damian, Satya Minnekanti

Description

To Reproduce:

  • Clear the browser cache.
  • Download a CKEditor build to your local file system - I have reproduced with the Full Packages of the 13-01-07 and 13-01-08 nightly builds.
  • Open a CKEditor sample from this downloaded build in IE7 or IE8. The page loads correctly.
  • Refresh the page.

Problem: The IE loading icon continues to display and the status bar states that the skin icons.png file is still being downloaded - see attached screen capture.

This only seems to be an issue in 4.x - it does not happen with 3.x builds.

Attachments (3)

ie loading issue.gif (66.1 KB) - added by Teresa Monahan 7 years ago.
Fiddler.png (58.7 KB) - added by Jakub Ś 7 years ago.
ckeditor.zip (384.7 KB) - added by GreenAirplane 6 years ago.
Try ckeditor/samples/replacebyclass.html page with styles.js and styles_fixed.js Don't forget to clear browser cache

Download all attachments as: .zip

Change History (14)

Changed 7 years ago by Teresa Monahan

Attachment: ie loading issue.gif added

Changed 7 years ago by Jakub Ś

Attachment: Fiddler.png added

comment:1 Changed 7 years ago by Jakub Ś

Keywords: IE7 IE8 added
Status: newconfirmed
Version: 4.0.14.0 Beta

This problem can be reproduced with IE7 and IE8 from CKEditor 4 beta.

I have checked this with Fiddler. Seems that the only difference between IE7-8 and newer are "not modified resources".

  • When you first load editor 12 resources are loaded
  • When you refresh the page In IE9-10 (see screenshot) you can see three resources with code 200 and 9 with "Not Modified 304" while in IE7-8 you only can see 3 with code 200. Perhaps there is a problem with 304?
  • On the other hand Fiddler used with CKEditor 3.x doesn't show Not Modified 304 resources as well so this might not be the right clue.

comment:2 Changed 7 years ago by Jakub Ś

#10482 was marked as duplicate.

comment:3 Changed 6 years ago by GreenAirplane

I had the same problem and found some solution for it.

You can find the problem if you will set breakpoint in scriptloader.js line 125:

script.$.onreadystatechange = function() {
	if ( script.$.readyState == 'loaded' || script.$.readyState == 'complete' ) {
		script.$.onreadystatechange = null;
		onLoad( url, true );
	}
};

At some point you will see that this event was fired but script.$.readyState === 'loading' and script.$.src === '$CKEditorDIR$/styles.js'

Easiest way to fix it: add something to styles.js file (e.g. console.log('styles.js')). Don't forget to clear cache after changes in styles.js

Last edited 6 years ago by GreenAirplane (previous) (diff)

comment:4 Changed 6 years ago by haugerbr

Version: 4.0 Beta4.1.1

comment:5 in reply to:  4 Changed 6 years ago by haugerbr

Replying to haugerbr: I changed it to the production version because this bug still exists in a later production version than the Beta.

comment:6 in reply to:  3 Changed 6 years ago by haugerbr

Replying to GreenAirplane:

I had the same problem and found some solution for it.

You can find the problem if you will set breakpoint in scriptloader.js line 125:

script.$.onreadystatechange = function() {
	if ( script.$.readyState == 'loaded' || script.$.readyState == 'complete' ) {
		script.$.onreadystatechange = null;
		onLoad( url, true );
	}
};

At some point you will see that this event was fired but script.$.readyState === 'loading' and script.$.src === '$CKEditorDIR$/styles.js'

Easiest way to fix it: add something to styles.js file (e.g. console.log('styles.js')). Don't forget to clear cache after changes in styles.js

Your solution did not work for me. I do not have a scriptloader.js file and changing the styles.js file did not resolve the problem.

Changed 6 years ago by GreenAirplane

Attachment: ckeditor.zip added

Try ckeditor/samples/replacebyclass.html page with styles.js and styles_fixed.js Don't forget to clear browser cache

comment:7 Changed 6 years ago by GreenAirplane

Replying to haugerbr:

I do not have a scriptloader.js file

You need to download source code if you want to debug this issue.

Your solution did not work for me. I do not have a scriptloader.js file and changing the styles.js file did not resolve the problem.

Please make sure that you cleared browser cache after applying fix. I uploaded archive with example (ckeditor.zip). It is most recent demo from http://ckeditor.com. There are 2 files: styles.js - empty file, styles_fixed.js - has some content.

How to use:
1) Open /ckeditor/samples/replacebyclass.html in IE 7,8
2) Refresh page -> editor will disappear
3) Rename styles_fixed.js to styles.js
4) Clear browser cache
5) Open the same page
6) Refresh page

As I understand, the cause of this issue is how old IE works with cached files. Looks like it just has a bug related to empty resources (because of it we are getting wrong state in even handler).

I hope it will help.

Last edited 6 years ago by GreenAirplane (previous) (diff)

comment:8 in reply to:  3 ; Changed 6 years ago by Frederico Caldeira Knabben

Replying to GreenAirplane:

The think that I'm finding strange on your solution is the fact that you say that styles.js is empty. I was not able to find any download of CKEditor with an empty styles.js.

Both the reporter and j.swiderski are confirming this issue with setups that definitely have contents in styles.js.

Much probably the problem is somewhere else at this point.

comment:9 in reply to:  8 Changed 6 years ago by GreenAirplane

Replying to fredck:

The think that I'm finding strange on your solution is the fact that you say that styles.js is empty. I was not able to find any download of CKEditor with an empty styles.js.

Both the reporter and j.swiderski are confirming this issue with setups that definitely have contents in styles.js.

Much probably the problem is somewhere else at this point.

Ok, yes it is possible that there is one more problem with similar symptoms. We don't use "stylescombo" plugin and because of it I tested only configurations where styles.js is empty.

Anyway, my solution works for us in production (unfortunately most of our users use IE8) and I hope that it can help to someone else who have similar problem.

Also, if someone will want to dig this issue then I suggest to check loadScript function in scriptloader.js or if someone can provide me access to page that have this issue (and styles.js is not empty) then I can try it later. Pls note that I cannot reproduce this issue on demo page or using full package in IE8 without modifications in styles.js

comment:10 Changed 6 years ago by Teresa Monahan

I can't reproduce this since CKEditor 4.1.2. It looks like it has been indirectly fixed.

comment:11 Changed 6 years ago by Jakub Ś

Resolution: fixed
Status: confirmedclosed

I can confirm I no longer see this issue.

Note: See TracTickets for help on using tickets.
© 2003 – 2019 CKSource – Frederico Knabben. All rights reserved. | Terms of use | Privacy policy