有关处理iframe标识嵌套循环难题的处理方式

日期:2021-01-19 类型:科技新闻 

关键词:h5互动游戏,微信h5怎么制作,h5转盘抽奖,h5测试制作,凡科H5

难题叙述

当大家应用easyui做后台管理管理方法系统软件的情况下,会应用tree组件来完成树形菜单,而大家每点一下1次相应菜单,会依据是不是有url来分辨是不是是1级菜单,和是不是早已存在

//依据该连接点姓名分辨该连接点是不是存在
                if ($("#tabs").tabs("exists",node.text)){
                    //假如存在就立即选定
                    $("#tabs").tabs("select",node.text);
                }

假如为否,大家就会嵌套循环1个iframe标识来开启1个相应的html对话框

$("#tabs").tabs("add",{
                        //题目为当今连接点的名字
                        title:node.text,
                        //沒有边框
                        border:false,
                        //是不是显示信息关掉按钮
                        closable:true,
                        //嵌套循环iframe标识
                        content:"<iframe frameborder='0' src='"+node.url+"' width='100%' height='100%'/>"
                    })

而此时有1个甚么样的难题呢?有这样1个状况,当大家在同1个访问器中,在A和B两个选项卡中都开启了后台管理管理方法网页页面,随后大家在A网页页面开展了销户实际操作,此时到A网页页面点一下“职工管理方法”,那末此时应当要完成全局性更新并回到到登陆网页页面,以下图所示


可是此时,因为大家嵌套循环iframe的原因,当大家点一下职工管理方法,一切正常推送的恳求是/employee/index,而此时因为早已logout,那末当今客户未验证

content:"<iframe frameborder='0' src='"+node.url+"' width='100%' height='100%'/>"

因此这里的iframe窗体的url详细地址就会变为login.jsp,从而演化变成iframe嵌套循环难题,也便是以下图所示:

处理思路

在大家html中,每个开启的窗体都有1个window目标,比如大家上图所示,假如站在里层窗体的角度来说,具体上外层窗体实际上便是里层窗体的父窗体(假如开启许多个嵌套循环,那末最外层窗体便是top),假如要获得外层窗体也很简易,便是window.parent。
此时,假如大家要开启i的窗体并不是最外层窗体,大家只必须将最外层的窗体目标取值给当今窗体便可

//假如当今的窗体并不是最外层窗体
        if (window != top){
            //那末就将最外层窗体的的详细地址赋给当今窗体
            top.location.href = window.location.href;
        }

到此这篇有关有关处理iframe标识嵌套循环难题的处理方式的文章内容就详细介绍到这了,更多有关iframe标识嵌套循环內容请检索脚本制作之家之前的文章内容或再次访问下面的有关文章内容,期待大伙儿之后多多适用脚本制作之家!