zoukankan      html  css  js  c++  java
  • IE中,多次弹出Pop页面,光标无法落入Pop页面中的Input,导致无法输入

    之前用JQuery开发了一个弹出框的插件,可用于Pop页面,里面是用的Iframe。但是最近用IE测试发现,第一次弹出Pop页面可以正常使用,关闭Pop页面,再次打开后,页面中的input文本框无法落入光标,导致没办法输入。苦思许久,百度谷歌了许久,最后终于解决了。

    Chrome测试没有问题,IE有,那证明是IE的问题了。果然,是IE的问题。我们知道,关闭Pop页面其实就是从dom中把Pop这个Div移除。但是IE移除了Div,可Div里面的iframe还在Dom树上,当再次弹出Pop页面又会创建iframe,这时会冲突,因此就造成了input无法落入光标的问题,这应该是IE的一个Bug。

    解决办法:在关闭Pop的js代码中,手动Remove掉iframe。另外最好把iframe的src指定为空。可以添加类似这样的代码:

    其中dl是代表弹出框的那个Div。

            var $dliframe = dl.find("iframe");
            if ($dliframe) { 
                $dliframe.attr("src", "");
                $dliframe.remove();
            }    
  • 相关阅读:
    第一章 数据集散地:数据库
    第六章 使用ADO.NET查询和操作数据
    第五章 使用ADO.NET访问数据库
    第四章 深入C#的String类
    IOS框架和服务
    一步步调试解决iOS内存泄漏
    app跳转
    iOS 视频直播
    学习心得
    iOS中FMDB的使用
  • 原文地址:https://www.cnblogs.com/dreamofei/p/4287318.html
Copyright © 2011-2022 走看看