Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
213 views
in Technique[技术] by (71.8m points)

elrte doesn't work with Internet Explorer 11 (IE11)

elrte doesn't work with Internet Explorer 11 (IE11)

Added by Hank Valery 18 days ago

Hi,

Microsoft is deploying IE11 with Windows Updates, so I tried out how it works with elrte. Unfortunately there are serious problems.

When you start typing, the text won't include on cursors position. It appears at the beginning of the editor, but seems to be outside the formatting body. After clicking "editor" you will recognize the typed in text isn't available.

Is there a solution to get IE work with elrte again? This problem didn't exist in IE8-IE10.

Thank you

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

It's hard to be certain; I don't know the elRTC software at all.

However a very quick look around in the source code reveals that it uses browser detection to switch how certain features work in different browsers -- in particular, there are a number of references in the code to $.browser.msie, which is the jQuery browser detection property.

This is problematic for two reasons:

  • Firstly, the jQuery browser detection feature is deprecated: recent versions of jQuery don't even include the $.browser property by default. It is possible to get it back by using the jQuery migrate library, but not ideal; it's deprecated for a reason, so relying it isn't really good practice in the long term. The fact that elRTE is relying on deprecated features in jQuery may cause other problems for your code as new browser versions are released, and will also make it harder for you to upgrade to a newer jQuery version.

  • Secondly, IE11 made a number of changes which break a lot of existing browser detection scripts. I'm not sure about $.browser.msie, but the paragraph above means that it's likely that you're using a version of jQuery that was released before IE11 existed, which means there's not way it would know about those changes.

My advice is to do the following:

  1. Post a ticket on the github issue tracker for erLTE to report the issue to them. Also check for other tickets that might already have reported it. There may also be updates in the github code that haven't made it into a formal release yet which may address the issue.

  2. Grab the latest version of jQuery (v1.10.2 at the time of writing), and also the jQuery.migrate library. Use those instead of whatever version you're currently using. If you're lucky, the latest version of the migrate library may have been updated to correctly detect IE11, and if you're really lucky, that might resolve the issue without any further work. I can't guarantee it but it's worth a try.

  3. Another option you might want to consider is switching to an alternative tool. CKEditor and TinyMCE seem to be the most popular tools of this type at the moment, but there are quite a few other editors available. You might want to try them out.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...