弹出框关闭图标在火狐和谷歌下生效,在IE11下不生效处理

1、问题描述:

  如下图弹出框,卸载码为第一个弹出框,检索设备为第二个弹出框,第二个弹出框的关闭图标“X”在火狐和谷歌下生效,点击可以关闭弹出框,而在IE11下点击不生效,无法关闭弹出框。

2、解决思路:

  不兼容IE,在IE下console下会报错,所以考虑给关闭图标加上一个“点击事件”。

二种处理方式:

一、首先,获取该iframe层的times值(times值是变化的,初次是2,页面没重新加载的再点击就依次加1)

var index=$(window.parent.document).find(‘.layui-layer-shade‘).eq(1).attr(‘times‘);

  其中的eq(1)因为我们需要的是第二个的iframe层,所以是eq(1)

  

  其次,给关闭图标加点击事件

top.$(".layui-layer-setwin").eq(1).click(function(){
        parent.layer.close(index);  //执行关闭操作(layer)
        //dialogClose();
    });

  其中,获取到iframe里的元素的方法:

top.$(".layui-layer-setwin").eq(1)  //top层是window层,第二个iframe的关闭图标,所以eq(1)取第二个

二、直接获取元素给它绑定点击事件

top.$(".layui-layer-setwin").eq(1).click(function(){
        //parent.layer.close(index);
        dialogClose();    //dialog的关闭方法
    });

补充:操作document文档内容

top.$("iframe[name=‘showUninstallCode‘]").contents().find("#uninstall_device").val(name);
top.$("iframe[name=‘showUninstallCode‘]").contents().find("#hidden_uninstallDevice").val(devOnlyId);
top.$("iframe[name=‘showUninstallCode‘]").contents().find("#uninstall_code").val(code);

/*
top.$("iframe[name=‘showUninstallCode‘]"),根据iframe name获取iframe元素
top.$("iframe[name=‘showUninstallCode‘]").contents(),获取iframe元素的document
*/

时间: 2024-08-03 03:11:01

弹出框关闭图标在火狐和谷歌下生效,在IE11下不生效处理的相关文章

EXTJS弹出框关闭 隐藏 显示都没问题

function diaglogs(){   Ext.onReady(function(){     var _window=new Ext.Window({     title:"选择批语",     renderTo:Ext.getBody(),     frame:true,     plain:true,     resizable:false,     buttonAlign:"right",     closeAction:"hide"

弹出框滑动,底部不跟着滑动

弹出框里有滚动条,并且页面也有滚动条时,在弹出框内滑动时底部页面也会跟着滑动,试了下当弹出框出现时加上$('body').css({'height','100%','overflow','hidden'});不起作用,后来在弹出框上加上以下代码便起作用了. $('body').css({ 'overflow':'hidden', 'position': 'fixed', 'top': scrollTop*(-1) }); 弹出框关闭后,再恢复 $('body').css({ 'overflow'

[js]uploadify结合jqueryUI弹出框上传,js中的冒出的bug,又被ie坑了

引言 最近在一个项目中,在用户列表中需要对给没有签名样本的个别用户上传签名的样本,就想到博客园中上传图片使用弹出框方式,博客园具体怎么实现的不知道,只是如果自己来弄,想到两个插件的结合使用,在弹出框中使用uploadify插件进行上传,每次都会报错很是无语,最后找到解决方案,这里记录一下,算是对工作中遇到的bug的一个总结. bug 这是vs调试状态下,显示的信息.在浏览器端,点击第一次上传按钮,正常,将弹出框关闭后,第二次打开,就会出现问题: 第一次单击上传: 第二次,关闭弹出框,再次单击上传

JavaScript中的三种弹出框

1 <!DOCTYPE html> 2 <html> 3 <head> 4 <title>JavaScript中的三种弹出框</title> 5 <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> 6 <script type="text/JavaScript"> 7 funct

点击datagrid弹出ldhdialog,点击弹出框的按钮,关闭且刷新datagrid

datagrid里的js这么写 //点击添加按钮触发 function superadd(title,addurl,gname,width,height) { gridname=gname; createwindow(title, addurl,width,height); }//点击修改按钮触发function superupdate(title,url, id,width,height,isRestful) { gridname=id; var rowsData = $('#'+id).da

控制非模态弹出框(showModelessDialog)唯一且随父页面关闭

网站开发中,常常会遇到需要弹出窗体的情况,一般弹出框有模态和非模态两种,如下: 模态:window.showModalDialog() 非模态:window.showModelessDialog() 另外还有window.open 方法,以及通过div来模拟弹出框效果的形式. window.open请自行百度,了解不深:div模拟的方式不适用与,弹出框中某些组件与父页面组件不相容的情况,如笔者所在项目,父页面中的jquery与整个网站js框架不相容(当然不是简单的可以通过替换$关键字来解决).所

获取弹出框的句柄,关闭弹出框

大家可能有过这样的需求,有的弹出框可能需要手动关闭,这样非常麻烦,我参考相关资料,用C# 程序自动关闭弹出框的例子,供大家参考 1 //获取弹出框的句柄,并隐藏函数. 2 using System.Runtime.InteropServices;//这个是必须的命名空间. 3 class SearchWindow 4 { 5 6 private const int WM_Close = 0x0010; 7 [DllImport("User32.dll ", EntryPoint = &

JS弹出框、对话框、提示框,JS关闭窗口、关闭页面和JS控制页面跳转

一.JS弹出框.对话框.提示框 //====================== JS最常用三种弹出对话框 ======================== //1弹出对话框并输出一段提示信息 function ale() { //弹出一个对话框 alert("提示信息!"); } //2弹出一个询问框,有确定和取消按钮 function firm() { //利用对话框返回的值 (true 或者 false) if (confirm("你确定提交吗?")) { a

弹出框插件

本插件ccShow是用来在前端显示弹出框,用户可以点击按钮,弹出一个框,也可以Ajax请求时,弹出提示语,请求中,等Ajax结束后,就显示已完成或者请求失败等情况.基于jQuery的插件,兼容各种浏览器. var ccShow = {}; var isSetTimeOut=false; var isShow = false, showType = ""; ccShow.showMsg = function (rb, type, willHide,callback,showTime) {