码迷,mamicode.com
首页 > 其他好文 > 详细

IE中,多次弹出Pop页面,光标无法落入Pop页面中的Input,导致无法输入

时间:2015-02-12 10:32:38      阅读:94      评论:0      收藏:0      [点我收藏+]

标签:

之前用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();
        }    

IE中,多次弹出Pop页面,光标无法落入Pop页面中的Input,导致无法输入

标签:

原文地址:http://www.cnblogs.com/dreamofei/p/4287318.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!