退格问题,在Flex应用程序对IE 8和IE 11应用程序、问题、Flex、IE

2023-09-09 21:29:16 作者:余生一个你

这个问题是众所周知的,在IE浏览器的一些疯狂的原因,退格键是用来回去你的历史记录导航。在Flex Web应用程序有时这种微软的错误出现,这是一个非常不好的头疼,解决透明和简便的方法。

This problem is well known that in IE for some crazy reason Backspace is used to go back your history navigation. In flex web applications sometimes this microsoft bug appears and it is a very bad headache to solve in a transparent and easy way.

通常,当您正在编辑的文本和文本区域或为TextInput TabNavigator容器内,或者您正在编辑的文本和文本区域出现这个问题是在一个弹出窗口。

Usually this problem occurs when you are editing text and textarea or textinput is inside TabNavigator container or you are editing text and textarea is inside a popup window.

推荐答案

我有这个问题更好的答案。尤里的回答并没有在我的情况有所帮助。没有什么帮助下编辑Adobe的history.js文件:

I have a better answer to this problem. Yury's answer didn't help in my case. What did help was editing the adobe's history.js file:

在配置文件的顶部,他们检查用户代理:

Near the top of the file they check the useragent:

} else if (useragent.indexOf("msie") != -1 ) {
    browser.ie = true;
    browser.version = parseFloat(useragent.substring(useragent.indexOf('msie') + 4));

我注意到,这是不捡的Internet Explorer,因为用户代理现在说的不是MSIEMozilla的。

I noticed that it wasn't picking up Internet Explorer, since the useragent now says "mozilla" instead of msie.

} else if  (useragent.match(/msie|trident|edge/) ) {
        browser.ie = true;
       browser.version = useragent.indexOf('msie') < 0 ? 7 :  parseFloat(useragent.substring(useragent.indexOf('msie') + 4));

我只是将版本设置为7,如果它匹配的三叉戟还是优势,因为这个版本的Adobe的code只为​​7或更少检查。

I'm just setting the version to be 7 if it matches trident or edge because this version of adobe's code only checks for 7 or less.